GESP 一级 · GESP 202312 C++ 一级 第 4 题

选择题 · 答案 A

← 整套速查表 GESP 一级 全部真题

题目

下面的程序用于判断 $N$ 是否为偶数,横线处应填写代码是( )。

cin >> N;
if (______)
    cout << "偶数";
else
    cout << "奇数";
答案:A

解题思维

这题考的是条件语句和取模运算。拿到题先想数学定义:偶数就是能被2整除,余数为0。编程里判断整除就是看 N%2 是否等于 0,直接填进 if 括号里就能控制输出。

常见错误

最容易掉进符号陷阱,把判断写成赋值 N%2=0,这在 C++ 里是非法的;或者漏掉比较运算符,只写 N%2,结果偶数时余数是0,条件为假,程序反而输出奇数;还有把不等号!=0 填进去,逻辑就反了,变成判断奇数了。做题时千万别只看眼熟就选,一定要代入 if 结构想清楚真假值。

详细解析(节选)

这道题考查什么

题目是一道非常基础但极具代表性的填空题,核心考点是条件语句(if-else)与取模运算的结合。

在 C++ 中,if 语句的执行逻辑是:计算括号内的表达式,如果结果为“真”(非零),则执行后面的语句;如果结果为“假”(零),则跳过,执行 else 分支。本题要求根据 $N$ 是否为偶数输出不同字符串,因此横线处必须填入一个能正确判断“偶数”这一数学性质的布尔表达式。

知识点概念拆解

1. 什么是偶数?

从数学定义出发,偶数是指能被 2 整除的整数。换句话说,一个数除以 2 的余数必须是 0。公式化表达就是:$N \pmod 2 = 0$。

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断