06 · 判断与循环
判断
if (score >= 90) {
printf("优秀\n");
} else if (score >= 60) {
printf("及格\n");
} else {
printf("不及格\n");
}
switch (day) {
case 1: printf("周一"); break; // ⚠️ 忘了 break 会「穿透」
case 2: printf("周二"); break;
default: printf("其他"); break;
}
- C 里没有 boolean,0 为假,非 0 为真。
switch的 case 必须是整型常量(Java 里可以是 String,C 不行)。
循环
for (int i = 0; i < 10; i++) { } // 已知次数
while (cond) { } // 条件先判断
do { } while (cond); // 至少执行一次(Java 也有)
while (cond); // 空语句:注意别写成死循环
跳转语句
| 语句 | 作用 |
|---|---|
break |
跳出当前循环 / switch |
continue |
跳过本次迭代,进入下一轮 |
goto |
无条件跳转(别用,破坏可读性) |
return |
结束函数 |
⚡ Java 对比
- Java 有增强 for(
for (int x : arr));C 没有,只能下标或指针遍历。 - C 没有
for-each、没有Iterator。 - C 的
switch不支持字符串。
关联
05-运算符 · 08-数组 · 21-命令行参数与排序算法