若有以下程序 #include main() { int a=0,b=0,c=0,d; c= (a+=b,, b+=a);/*第4行*/ d=c;;/*第5行*/ ;/*第6行*/ ;printf("%d,%d,%d\n",a,b,c);/*第7行*/

admin2015-07-31  29

问题 若有以下程序
#include
main()
{ int a=0,b=0,c=0,d;
c= (a+=b,, b+=a);/*第4行*/
d=c;;/*第5行*/
;/*第6行*/
;printf("%d,%d,%d\n",a,b,c);/*第7行*/
}
编译时出现错误,你认为出错的是

选项 A、第4行
B、第5行
C、第6行
D、第7行

答案A

解析 第4行逗号表达式中间的第二个表达式为空,是不合法的,可以去掉写成a+=b,b+=a,也可以在里面补一个表达式,如a+=b,a,b+=a?所以选择A选项。
转载请注明原文地址:https://jikaoti.com/ti/lbi0FFFM
0

最新回复(0)