执行 C++ 语句 cout << (int(3.5) * 2) 将输出 $6$。
答案A。根据计算机/编程基础知识分析判断。
关键提醒:C++中的^是异或运算符,不是乘方!2^5=7而非32。这是最高频的错误。
【考点】强制类型转换|运算符优先级|C++输出
🎯 考纲定位:GESP二级C++大纲中,强制类型转换属于基础语法模块。命题人把这道题放在这里,就是卡住那些只记得int是整数类型,却忘了int(3.5)会直接截断小数部分的学生。
🧠 解题思维:看到int(3.5)先想类型转换:C++里int构造函数会直接截断小数部分,所以int(3.5)等于3。再算乘法3*2=6,cout输出就是6。这一类题的通法是:遇到函数调用先算参数,再按运算符优先级计算。
🪤 陷阱拆解:错误选项B是那种'以为会四舍五入'或者'以为输出带小数'的陷阱。命题人利用的是考生对int转换细节的模糊记忆。如果你只背结论,不理解int(3.5)会直接截断小数部分,就会掉进这个陷阱。
🔄 反命题思维:命题人视角下,如果改成cout << (int)3.5 * 2,或者把3.5换成3.9,都是考同一个知识点。刷到这类题先问自己:'命题人想考我什么?'