C++ 语句 cout << (2 * 3, 3 % 10, 2+3) 的输出为 6,3,5。
这道题考的是逗号运算符的求值规则。拿到题别急着看 cout,先盯着括号里那串东西:逗号表达式是从左往右算,但整个表达式的值只取最后一个。最后一步是 2+3=5,所以 cout 只会输出 5。
最容易掉进命题人设的坑——以为逗号是分隔符,会把每个子表达式的结果都输出来,或者误以为 cout 后面跟个逗号表达式会逐个输出。其实逗号运算符优先级最低,它把前面的计算结果直接‘吞掉’,只保留最后一个值传给 cout。如果你只背‘cout 输出什么’而不理解‘逗号表达式求值规则’,一定会选 A。
【考点】运算符优先级|逗号运算符|表达式求值
GESP 一级"基础编程"模块,专门考查 C++ 运算符优先级与表达式求值规则。命题人放这道题就是要筛掉那些"凭感觉写代码、不真正理解语言规则"的考生——逗号运算符是 C++ 里最容易混淆的运算符之一,绝大多数考生根本不知道它存在,更不知道它的行为。