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

admin2010-04-24  23

问题 下面程序段的输出结果是______。
   #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的值被改变*/
转载请注明原文地址:https://kaotiyun.com/show/4RAx777K
0

最新回复(0)