问题 填空题

下面程序段的输出结果是______。 #include<stdio.h> int b=1: int func(int *a) {*a+=b;return(*a);) main() {int a=2,res=1; res+=func(&a); printf("%d%d\n",a,res);}

答案

参考答案:3 4

解析: #include<stdio.h> int b=1; int func(int *a)/*参数传递采用地址传递的方式,函数本身可改变函数体外的变量的值*/ {*a+=b;return(*a);} main() {int a=2,res=1; res+=func(&a);/*根据函数"func()"的定义,实参必须是变量的地址*/ printf("%d%d\n",a,res);}/*"main()"函数内的变量a的值被改变*/

单项选择题
单项选择题