IOS--C 语言 Lesson 函数的返回值

来源:互联网 发布:淘宝胖人服饰专卖店 编辑:程序博客网 时间:2024/06/05 04:28

一 函数返回值
1.函数返回值类型 函数名 (参数);
函数:能完成特定功能的代码段
函数的声明注意:函数定义在主函数之前,函数的声明可以省略
函数定义在主函数之后,必须要写函数的声明
为了规范,我们在使用函数的要加上函数的声明
2.函数类型 分为四种
1⃣无返回值 无参数;
2⃣无返回值 有参数;
3⃣有返回值 无参数;
4⃣有返回值 有参数;
//无返回值 无参数;

void buyRedWine(){    printf("没钱");}

// 无返回值 有参数;

void buyRedWine2( int money){    printf("跑路");

// 有返回值 无参数;
//return 返回 函数的返回值 用 return

int buyRedWine3( ){    printf("买什么?");    printf("1.拉菲,2.果啤");

//有返回值 有参数

int buyRedWine4(int money){    printf("买什么酒,给多少钱\n");    printf("买果啤,给%d钱\n",money);   return 3;

好处:简化代码,避免重复代码 提高开发效率 集中控制保证安全

// 函数从定义的角度上讲:分为库函数 ;自定义函数
// 库函数 :系统提供 我们能直接拿来用
// 自定义函数:开发人员自己写的函数,为了完成某些 特殊的功能
// 如何自定义函数
// 参数= 数据类型+变量名
// 返回值数据类型 :函数名(数据类型 变量1,数据类型 变量2,….){函数体}
// void 空 表示没有返回值

1.编写函数dayOfYear(year, mouth,day),使得函数返回由这三个参数确定的那一天是一年中的第几天void dayOfYear(int year,int month,int day){    int monthDay[12] = {31,28,31,30,31,30,31,31,30,31,30,31};    if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {        monthDay[1] = 29;    }    int totalDay = 0;    for (int i = 0; i < month - 1; i++) {        totalDay += monthDay[i];    }    totalDay += day;    printf("这是一年中的第%d天\n",totalDay);
  1. 函数的调用
    函数 A 调用函数 B ; A 叫主调函数 B 叫被调函数

    二 递归函数
    //递归就是自己调用自己,非常吃内存,不建议使用
    //递归要有出口

int jieCheng(n){    if (n == 1) {        return 1;//递归的出口    }else{        return n * jieCheng(n - 1);    }}
  1. 遍历数组
for (int i = 0; i < 10; i++) {   printf("%d ",a[i]);}

三 函数参数
//函数参数分为形参和实参
//形参:函数定义时候的参数
//实参:函数调用时候用的参数
//形参可以有多个,实参的个数必须要跟形参的个数一样
//形参和实参的类型要一致

四 冒泡排序的函数
//数组名作为函数的参数只是形参和实参指向同一块内存,不知道有多少个元素,这是时候也要把数组长度传进来
//冒泡排序函数

void bubbleSort(int arr[],int length){   for (int i = 0; i < length - 1; i++) {    for (int j = 0; j < length - 1- i; j++) {          if (arr[j] > arr[j+1]) {             int temp = arr[j]                arr[j] = arr[j+1];                arr[j+1] = temp;            }        }    }}
0 0