C语言条件语句 #
一、if语句 #
1.1 基本语法 #
c
if (条件) {
语句;
}
1.2 使用示例 #
c
#include <stdio.h>
int main() {
int score = 85;
if (score >= 60) {
printf("及格\n");
}
return 0;
}
1.3 单语句省略大括号 #
c
if (score >= 60)
printf("及格\n");
建议始终使用大括号,避免错误。
二、if-else语句 #
2.1 基本语法 #
c
if (条件) {
语句1;
} else {
语句2;
}
2.2 使用示例 #
c
#include <stdio.h>
int main() {
int score = 55;
if (score >= 60) {
printf("及格\n");
} else {
printf("不及格\n");
}
return 0;
}
三、if-else if语句 #
3.1 基本语法 #
c
if (条件1) {
语句1;
} else if (条件2) {
语句2;
} else {
语句3;
}
3.2 使用示例 #
c
#include <stdio.h>
int main() {
int score = 85;
if (score >= 90) {
printf("优秀\n");
} else if (score >= 80) {
printf("良好\n");
} else if (score >= 60) {
printf("及格\n");
} else {
printf("不及格\n");
}
return 0;
}
四、嵌套if语句 #
4.1 基本使用 #
c
#include <stdio.h>
int main() {
int age = 25;
int score = 85;
if (age >= 18) {
if (score >= 60) {
printf("成年且及格\n");
} else {
printf("成年但不及格\n");
}
} else {
printf("未成年\n");
}
return 0;
}
4.2 else匹配问题 #
c
if (a > 0)
if (b > 0)
printf("a和b都大于0\n");
else
printf("a不大于0\n");
else与最近的if匹配。使用大括号避免歧义:
c
if (a > 0) {
if (b > 0) {
printf("a和b都大于0\n");
}
} else {
printf("a不大于0\n");
}
五、条件运算符 #
5.1 语法 #
c
条件 ? 表达式1 : 表达式2
5.2 使用示例 #
c
#include <stdio.h>
int main() {
int a = 10, b = 20;
int max = (a > b) ? a : b;
printf("最大值: %d\n", max);
int score = 75;
printf("%s\n", score >= 60 ? "及格" : "不及格");
return 0;
}
六、常见错误 #
6.1 混淆 = 和 == #
c
if (a = 5) {
}
6.2 分号错误 #
c
if (a > 5);
{
printf("总是执行\n");
}
6.3 条件表达式 #
c
if (a = b + c) {
}
这是赋值表达式,不是比较。
七、总结 #
| 语句 | 说明 |
|---|---|
| if | 单条件判断 |
| if-else | 二选一 |
| if-else if | 多条件判断 |
| ?: | 三目运算符 |
下一步,让我们学习switch语句!
最后更新:2026-03-26