下面的程序用于判断 $N$ 是否为偶数,横线处应填写代码是( )。
cin >> N;
if (______)
cout << "偶数";
else
cout << "奇数";这题考的是条件语句和取模运算。拿到题先想数学定义:偶数就是能被2整除,余数为0。编程里判断整除就是看 N%2 是否等于 0,直接填进 if 括号里就能控制输出。
最容易掉进符号陷阱,把判断写成赋值 N%2=0,这在 C++ 里是非法的;或者漏掉比较运算符,只写 N%2,结果偶数时余数是0,条件为假,程序反而输出奇数;还有把不等号!=0 填进去,逻辑就反了,变成判断奇数了。做题时千万别只看眼熟就选,一定要代入 if 结构想清楚真假值。
题目是一道非常基础但极具代表性的填空题,核心考点是条件语句(if-else)与取模运算的结合。
在 C++ 中,if 语句的执行逻辑是:计算括号内的表达式,如果结果为“真”(非零),则执行后面的语句;如果结果为“假”(零),则跳过,执行 else 分支。本题要求根据 $N$ 是否为偶数输出不同字符串,因此横线处必须填入一个能正确判断“偶数”这一数学性质的布尔表达式。
从数学定义出发,偶数是指能被 2 整除的整数。换句话说,一个数除以 2 的余数必须是 0。公式化表达就是:$N \pmod 2 = 0$。