有以下程序int a=2;int f(int *a){return (*a)++;}main( ){ int s=0; { int a=5; s+=

5 查阅

有以下程序int a=2;int f(int *a){return (*a)++;}main( ){ int s=0; { int a=5; s+=f(&a); } s+=f(&a); printf(“%d\n”,s);} 执行后输出结果是()

A.10

B.9

C.7

D.8

参考答案:

C解析:s的两次赋值依次为: s=s+f(&a)=0+5=5;此处的a为局部变量。 s=s+f(&a)=5+2=7;此处的a为全局变量。

计算机二级