函数定义的一般形式 函数定义的一般形式: 类型说明函数名(形式参数说明1 定义局部变量 声的部分 明外部变量、函数 数体 形式参数说明的一般形式: 类型说明变量1[类型说明变量2,… int max (int nt y) int z x>y x:yi return(z) 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 函数体 函数定义的一般形式 ⚫ 函数定义的一般形式: 类型说明 函数名([形式参数说明]) { 定义局部变量 声明外部变量、函数 语句 } ⚫ 形式参数说明的一般形式: 类型说明 变量1 [,类型说明 变量2, ...] int max(int x, int y) { int z; z = x>y ? x : y; return(z); } 声明部分
函数定义的一般形式 无参函数的定义形式 void print message ( 类型说明函数名0 printf("How do you 声明部分 do!\n"); 语句 2.有参函数的定义形式 int max (int x, int y) 类型说明函数名(形式参数说明) int zi 声明部分 x>y x:Y return(z)i 语句 3.空函数的定义形式 int draw circle o 类型说明函数名形式参数说明])/* draw a circle*/ 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 函数定义的一般形式 1. 无参函数的定义形式 类型说明 函数名() { 声明部分 语句 } 2. 有参函数的定义形式 类型说明 函数名(形式参数说明) { 声明部分 语句 } 3. 空函数的定义形式 类型说明 函数名([形式参数说明]) { } void print_message() { printf("How do you do!\n"); } int max(int x, int y) { int z; z = x>y ? x : y; return(z); } int draw_circle() { /*draw a circle*/ }
函数的参数和涵数的值 般情况下,主调函数与被调函数之间存 在数据传递关系(通信关系) 主调函数main() int a, b,gi ●主调函数将数据传递 scanf(odod &a,&b) 给被调函数;一函 g max(a, b)i 数参数 printf("Maxnum: 8d\n",g)i ●被调函数处理完成后 a 返回主调函数,并将 int max (int x, int y) 得到的结果返回给主 被调函数 调函数—函数返回 int z x>y? x Y 值 return(z)i
电子科技大学通信与信息工程学院 int max(int x, int y) { int z; z = x>y ? x : y; return(z); } ⚫ 一般情况下,主调函数与被调函数之间存 在数据传递关系(通信关系) main() { int a, b, g; scanf("%d%d", &a,&b); g = max(a, b); printf("Max_num:%d\n",g); } 函数的参数和函数的值 a b z 主调函数 被调函数 ⚫ 主调函数将数据传递 给被调函数;——函 数参数 ⚫ 被调函数处理完成后, 返回主调函数,并将 得到的结果返回给主 调函数——函数返回 值
形式参数和实际参数 形式参数 #立nc1ude" stdio.h ●函数参数:用于函数 int max(intx,inty) 间数据的传递 int z 形式参数(形参) x>y x:yi return(z)i 定义函数时使用的参 数 main() 实际参数(实参): int a, b, g 引用(调用)函数时 scanf(dd", &a, &b) 使用的参数 g max(a, b)i printf("Max _hum: 8d\n",g); 实际参数 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 #include "stdio.h" int max(int x, int y) { int z; z = x>y ? x : y; return(z); } main() { int a, b, g; scanf("%d%d", &a,&b); g = max(a, b); printf("Max_num:%d\n",g); } 形式参数和实际参数 ⚫ 函数参数:用于函数 间数据的传递 ⚫ 形式参数(形参): 定义函数时使用的参 数 ⚫ 实际参数(实参): 引用(调用)函数时 使用的参数 形式参数 实际参数
形式参数和实际参数 ●C语言如何实现函数间的数据传递? 传递方式:值传递 ●单向传递(实参→形参) ●将实参的值拷贝给形参 int max(intx,inty) 主调函数 内存空间2 5 return(z) 被调函数 内存空间2 5 main o Y g=max( a, b) 电子科技大学通信与信息工程号完
电子科技大学通信与信息工程学院 形式参数和实际参数 ⚫ C语言如何实现函数间的数据传递? ⚫ 传递方式:值传递 ⚫ 单向传递(实参→形参) ⚫ 将实参的值拷贝给形参 ... int max(int x, int y) { .... return(z); } main() { ... g = max( a, b ); ... } 2 5 2 5 主调函数 内存空间 被调函数 内存空间 a b x y