C++ 语句 printf("6%2={%d}", 6%2) 执行后的输出是( )。
答案D。根据计算机/编程基础知识分析判断。
仔细审题,注意"不正确""不属于""不是"等否定词。用排除法缩小范围。
【考点】C++ 格式化输出|取模运算|整型常量表达式
1. 🎯 考纲定位 GESP 一级信息处理模块 C++ 基础题,命题人卡住的是格式化占位符和运算符优先级,绝大多数学生看到 %d 就慌,要么当作文本输出,要么误以为整个表达式要参与格式化。
2. 🧠 解题思维 看到 printf 立即定位到格式字符串:"6%2={%d}" 里的 %d 是占位符,会被替换为对应参数的整数值;6%2 是整型常量表达式,运算结果为 0;所以输出为 6%2={0}。
3. 🪤 陷阱拆解 A、B 把 %d 当作文本输出,忽略了格式化替换机制;C 更阴险——把 % 误认为取模运算符,导致整体输出 0=0(两个 0 来自 6%2 和 6%2 的运算结果);命题人用 % 同时出现在字符串和运算符中,制造双重混淆。
4. 🔄 反命题思维 如果改成 printf("6%2={%d}", 6/2),答案为 6%2={3};改成 6%2+1,答案为 6%2={1}。提醒学生先问自己:"占位符对应什么值?"