清华大学出版社 TSINGHUA UNIVERSITY PRESS 大多数情况下,主调函数和被调用涵数之间有 数据传递的关系。 在不同的函数之间传递数据,可以使用的法: ◆参数:通过形式参数和实际参数 ◆返回值:用 return语句返回计算结果 ◆全局变量:外部变量
在不同的函数之间传递数据,可以使用的法: ◆参数:通过形式参数和实际参数 ◆返回值:用return语句返回计算结果 ◆全局变量:外部变量 大多数情况下,主调函数和被调用函数之间有 数据传递的关系
例8.2调用函数时的数据传递FmE include <stdio h> void m a ino i int max(int x, int y) /*对max函数的声明*/ int a, b, c scanf ("%d, %d ",&a,&b) c=max (a, b) printf (Max is%d ", c)
#include <stdio.h> void main() { int max(int x,int y); /* 对max函数的声明 */ int a,b,c; scanf("%d,%d",&a,&b); c=max(a,b); printf("Max is %d",c); } 例8.2调用函数时的数据传递
清华大学出版社 TSINGHUA UNIVERSITY PRESS int max(intx,inty)/*定义有参函数max*/ int z z =x>y? X:y return(z) 运行情况如下: Maxis 8
int max(int x,int y)/*定义有参函数max */ { int z; z=x>y?x∶y; return(z); } 运行情况如下: 7,8↙ Max is 8
华大学出版社 通过函数调用,使两个函数中的数据发生联系 c=max(a,b);(main函数) Int max(intx,inty)(max函数) in t xy? X: i return(z);
通过函数调用,使两个函数中的数据发生联系
清华大学出版社 TSINGHUA UNIVERSITY PRESS 关于形参与实参的说明: (1)在定义函数中指定的形参,在未出现函数 调用时,它们并不占内存中的存储单元。只 有在发生函数调用时,函数maX中的形参 才被分配內存单元。在调用结束后,形参所 占的内存单元也被释放。 2)实参可以是常量、变量或表达式,如 max(3 a+b) 但要求它们有确定的值。在调用时将实参的 值赋给形参
关于形参与实参的说明: (1) 在定义函数中指定的形参,在未出现函数 调用时,它们并不占内存中的存储单元。只 有在发生函数调用时,函数max中的形参 才被分配内存单元。在调用结束后,形参所 占的内存单元也被释放。 (2) 实参可以是常量、变量或表达式,如: max(3,a+b); 但要求它们有确定的值。在调用时将实参的 值赋给形参