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

admin2020-07-28  30

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

选项 A、0,4,4
B、1,4,1
C、0,4,0
D、1,4,4

答案C

解析 表达式c= (a -= ++a), (a+=b, b+=4)相当于逗号表达式,首先计算c= (a -= ++a),其中a -= ++a)等价于a=a-(++a),得到a的值0,c的值为0,在计算 (a+=b, b+=4)时,a和b的初值为0,计算以后,a为0,b为4。
转载请注明原文地址:https://kaotiyun.com/show/C23p777K
0

相关试题推荐
最新回复(0)