若有以下程序 #include main() { int a=0,b=0,c=0; c= (a+=++b, b+=4); printf("%d,%d,%d\n",a,b,c); } 则程序的输出结果是( )

admin2015-07-28  17

问题 若有以下程序
#include
main()
{ int a=0,b=0,c=0;
c= (a+=++b, b+=4);
printf("%d,%d,%d\n",a,b,c);
}
则程序的输出结果是( )

选项 A、1,5,5
B、1,5,1
C、-1,4,4
D、-1,4,-1

答案A

解析 考查运算符与表达式。表达式"c= (a+=++b, b+=4);"中(a+=++b, b+=4)为逗号表达式,先计算"a+=++b"得b=1,a=1。然后计算"b+=4"得b=5,所以整个逗号表达式的值为5,即c=5.最终输出结果为A)。
转载请注明原文地址:https://kaotiyun.com/show/87Jp777K
0

最新回复(0)