条件语句
概念讲解
if 语句
123if (条件) {
// 条件为真时执行
}if-else 语句
12345if (条件) {
// 条件为真时执行
} else {
// 条件为假时执行
}if-else if-else 语句
1234567if (条件1) {
// 条件1为真
} else if (条件2) {
// 条件2为真
} else {
// 所有条件都为假
}switch-case 语句
1234567891011switch (表达式) {
case 值1:
// 表达式等于值1
break;
case 值2:
// 表达式等于值2
break;
default:
// 其他情况
break;
}比较运算符
| 运算符 | 含义 | 示例 |
|---|---|---|
| == | 等于 | a == b |
| != | 不等于 | a != b |
| > | 大于 | a > b |
| < | 小于 | a < b |
| >= | 大于等于 | a >= b |
| <= | 小于等于 | a <= b |
逻辑运算符
| 运算符 | 含义 | 示例 |
|---|---|---|
| && | 逻辑与 | a && b |
| || | 逻辑或 | a || b |
| ! | 逻辑非 | !a |
考点分析
初赛考查方式
- 选择题: 条件判断
- 程序阅读: if-else 语句
- 填空题: 条件表达式
常见题型
- 条件判断
- 嵌套条件
- 逻辑运算
例题精讲
例题 1:判断奇偶
题目: 判断一个数是奇数还是偶数。
解答:
12345if (n % 2 == 0) {
cout << "偶数" << endl;
} else {
cout << "奇数" << endl;
}例题 2:成绩等级
题目: 根据成绩输出等级。
解答:
1234567891011if (score >= 90) {
cout << "A" << endl;
} else if (score >= 80) {
cout << "B" << endl;
} else if (score >= 70) {
cout << "C" << endl;
} else if (score >= 60) {
cout << "D" << endl;
} else {
cout << "F" << endl;
}练习题
- 判断一个数是否是正数。
查看答案
12345if (n > 0) {
cout << "正数" << endl;
} else {
cout << "非正数" << endl;
}- 判断一个年份是否是闰年。
查看答案
12345if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
cout << "闰年" << endl;
} else {
cout << "平年" << endl;
}闰年条件:能被 4 整除但不能被 100 整除,或者能被 400 整除。
- 求三个数的最大值。
查看答案
1234int maxVal = a;
if (b > maxVal) maxVal = b;
if (c > maxVal) maxVal = c;
cout << maxVal << endl;或使用三目运算符:
1int maxVal = (a > b) ? (a > c ? a : c) : (b > c ? b : c);易错点
⚠️ 注意:
- == 是比较,= 是赋值
- 注意逻辑运算符的短路特性
- switch-case 要加 break
- 注意条件的边界