关于C语言,以下程序的运算结果为()main(){int a=1,b=2,c;c=(a>b)?b++:(++a>4)?b++;a+++;printf("%d%d%d",a,b,c);}主要是c=(a>b)?b++:(++a>4)?b++;a+++;的运算顺序不是太明白.
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/02 22:25:16
b)?b++:(++a>4)?b++;a+++;的运算顺序不是太明白." />
xR[KA+PذKb[rY%B
AP($6i$Z5&M&?3gf_Y+EhJ0]ɖtxO lrg[\k. V;OBQI#w_3s|&SL,VTЗ=cx1yMY(4C3|"I8bmn-Y/DZ4xpr
Lf_eyGKKfAmhL29$](ws-4hpbcH<2Z~bw/4O&x3+wڻ.vc3VR(`
关于C语言,以下程序的运算结果为()main(){int a=1,b=2,c;c=(a>b)?b++:(++a>4)?b++;a+++;printf("%d%d%d",a,b,c);}主要是c=(a>b)?b++:(++a>4)?b++;a+++;的运算顺序不是太明白.
关于C语言,以下程序的运算结果为()
main()
{int a=1,b=2,c;
c=(a>b)?b++:(++a>4)?b++;a+++;
printf("%d%d%d",a,b,c);
}
主要是c=(a>b)?b++:(++a>4)?b++;a+++;的运算顺序不是太明白.
关于C语言,以下程序的运算结果为()main(){int a=1,b=2,c;c=(a>b)?b++:(++a>4)?b++;a+++;printf("%d%d%d",a,b,c);}主要是c=(a>b)?b++:(++a>4)?b++;a+++;的运算顺序不是太明白.
(a>b)?b++:(++a>4)?b++;a+++; //你写的最后一个+是不是没有呀
应该是下面这样的吧
(a>b)?b++:( (++a>4)? b++ : a++);
顺序很容易理解,C语言标准中明确规定,?:为一个顺序点,上面的式子可以简化为:
if (a >b ) b++;
else if (++a > 4) b++;
else a++;
这估计就是二级考试里面的题.真正在写C程序时,?: 一般不会嵌套.
欢迎到 0x30 帖吧讨论更多计算机相关的知识 .