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

admin2018-10-16  37

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

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

答案C

解析 对于语句c= (a+=++b, b+=4);首先计算a=a+(++b),a,b初值为0,则计算以后a为1,b为1,然后计算b+=4,得到b的值为5,此时表达式b+=4的值为整个逗号表达式的值,因此c的值为5。
转载请注明原文地址:https://jikaoti.com/ti/9wa0FFFM
0

最新回复(0)