06 · 判断与循环

2026.09.27 · 🟢 易(与 Java 基本一致)

判断

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-命令行参数与排序算法