int a=2,b=6,c=8;,表达式(a,b),(c,10)的值,求程序.

1个回答

  • 是这样的:首先从全局看这是个逗号表达式.表达式的第一个操作数是(a,b),第二个操作数是(c,10).依照都好表达式的运算规则:从左向右依次运算,整个表达式的值是最右边操作数的值.

    但是对于这里,操作数又是逗号表达式.所以,(c,10)这个表达式的值为10,二这个值又作为外层逗号表达式的运算,所以最后的结果是整个表达式的值就为10.故这里应该选择D.

    但是你这里的做法是有误的!d=(a,b),(c,10);

    我们知道在这个表达式中有三种运算符:=、()、,

    而这三种运算符的优先顺序为:优先级最高的是(),其次是= ,而,是所有运算符中优先级别是最低的.所以先运算(),运算后表达式变为:d=6,10

    再运算= 所以,d=6

    整个表达式的值是10 但是的的值是6 所以你这里输出的不会是你想要是10 ,而输出的是6