问题
单项选择题
以下程序的输出结果是______。 int x=1; fun(int p) { int x=4; x+=p++; printf("%d",x); } main() { int a=3; fun(a) ; x+=a++; printf("%d\n",x); }
A.8 4
B.4 5
C.7 4
D.9 5
答案
参考答案:C
解析:[分析]本题考查局部变量和全局变量的关系。在调用fun函数时,形参 p值为3(实参a传递的),在x+=p++中,x是局部变量(局部优先),x和p的和7放在变量x中,p再自加变为4,显示输出x的值7;主函数中的x是全局变量,值为1,x和a的和4放在变量x中,a再自加变为4,显示输出x的值4。