823函数参数与函数的返回值1 1.函数的形式参数与实际参数 【例84】编一程序,将主函数中的两个变量的值传 递给swap函数中的两个形参,交换两个形参的值。 void swap(int x, int y) d int z; 形式参数(形参) FX; X-Y; y Z. printf(lny=o %y=%d",xy); #include<tdi.h 际参数(实参) void mail 单向值传递 inta=8=20; 程序输出结果: swap(a,D; x=20,y=10 printf("na=%d, b=%d\n", a, b);a=10, b=20 2021/2/24
2021/2/24 11 void swap(int x, int y) { int z; z=x; x=y; y=z; printf("\nx=%d,y=%d",x ,y); } #include<stdio.h> void main( ) { int a=10,b=20; swap(a,b); printf("\na=%d,b=%d\n",a,b); } 8.2.3 函数参数与函数的返回值 1.函数的形式参数与实际参数 程序输出结果: x=20,y=10 a=10,b=20 形式参数(形参) 实际参数(实参) 【例8.4】编一程序,将主函数中的两个变量的值传 递给swap函数中的两个形参,交换两个形参的值。 单向值传递
有关形参和实参的说明 12 ①当函数被调用时才给形参分配内存单元。调用结 束,所占内存被释放。 ②实参可以是常量、变量或表达式,但要求它们有 确定的值。 ③实参与形参类型要一致,字符型与整型可以兼容 ④实参与形参的个数必须相等。在函数调用时,实 参的值赋给与之相对应的形参。“单向值传递” 注意:在C中,实参的求值顺序是从右到左 2021/2/24
2021/2/24 有关形参和实参的说明: 12 ① 当函数被调用时才给形参分配内存单元。调用结 束,所占内存被释放。 ② 实参可以是常量、变量或表达式,但要求它们有 确定的值。 ③ 实参与形参类型要一致,字符型与整型可以兼容 。 ④ 实参与形参的个数必须相等。在函数调用时,实 参的值赋给与之相对应的形参。“单向值传递” 。 注意:在TC中,实参的求值顺序是从右到左
例85】计算并输出圆的面积。 13 s(int r) freturn 3 14*r*r; # include< stdio.h>◎ 自动转换 void maino 为int型 i int r, area; scanf(%d", &r); 程序运行情况如下: area=s(r) printf(%odn",area) 12 思考 若要得到单精度实型的圆面积,程库液如何修改 2021/2/24
2021/2/24 13 【例8.5】计算并输出圆的面积。 s(int r) { return 3.14*r*r;} #include<stdio.h> void main( ) { int r,area; scanf("%d",&r); area=s(r); printf("%d\n",area); } 自动转换 为int型 思考: 若要得到单精度实型的圆面积,程序应如何修改 程序运行情况如下: 2 12