问题
填空题
以下程序运行后的输出结果是 【15】 。
int a=5;
fun (int b)
static int a=10;
a+=b++;
printf("%d ",a);
main()
int c=20;
fun(c);
a+=c++;
Printf("%d\n",a);
答案
参考答案:30 25
解析: 本题fun()函数中使用的a是其自身定义的静态局部变量a,所以算术运算中a+=b++相当于a=a+b,b=b+1结果为 10+20=30。所以,在fun()函数中的printf("%d ",a)输出结果为30。而主函数中使用的a是全局变量a,所以算术运算中a+=c++相当于a=a+c,c=c+1结果为5+20=25。所以,主函数中的printf("%d\n",a)输出的结果为25。故最终输出结果是30 25。