若有以下程序 #include <stdio.h> main() { int a=0,b=0,c=0,d; c= (a+=b,, b+=a); /*第4行*/ d=c;;

admin2020-07-28  23

问题 若有以下程序
    #include <stdio.h>
    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://kaotiyun.com/show/zG3p777K
0

最新回复(0)