柠檬试题库
search
首页
计算机
公务员
驾照
关于
share
若有以下程序 #include
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,0
B.0,4,4
C.1,4,1
D.1,4,4
热度🔥2,341
参考答案:A
解析:
【解析】逗号运算符的结合性从左到右,因此逗号表达式将从左到右进行计算。且逗号运算符的优先级最低,所以先计算c=(a-=++a)这部分。其中,赋值运算符从右往左计算,先执行++a,a自增1后再赋值,所以a的值为1,执行a=a-1,即a=1-1,a的值为0,并将0赋给变量c。第二部分(a+=b,b+=4),先执行a=a+b,a=0+0,即a的值为0,然后执行b+=4,b=0+4,即b的值为4。所以打印结果为0,4,0,选择A选项。
复制题目向AI提问
content_copy
content_copy
扫码免费计算机二级刷题
2025年计算机等级考试题库
推荐
设某二叉树的前序序列为ABC,中序序列为CBA,则该二叉树的后序序列为
在Visual FoxPro中,编译或连编生成的程序文件的扩展名不包括( )。
在表单设计中,经常会用到一些特定的关键字、属性和事件,下列各项中属于属性的是( )。
用户进程从用户态转变为内核态时,使用的指令是
设循环队列的存储空间为Q(1:m),初始状态为空。现经过一系列正常的入队与退队操作后,front=m,rear=m-1,此后从该循环队列中删除一个元素,则队列中的元素个数为( )。
标签
二级C语言
执行
运算符
逗号
计算