写C语言程序的时候,总免不了要让程序“自己做决定”。比如你写个计算器,输入两个数,选加减乘除,程序就得根据你的选择来算结果。这背后靠的就是条件判断。
if语句:最基础的“如果”
就像生活中我们说“如果下雨就不去打球”,C语言里用 if 就能实现这种逻辑。只要括号里的条件成立,花括号里的代码就会执行。
#include <stdio.h>
int main() {
int score = 85;
if (score >= 60) {
printf("及格了!\n");
}
return 0;
}
上面这段代码,只要分数大于等于60,就会打印“及格了”。不然就啥也不干。
else:二选一的情况
有时候不是“做”就是“不做”,比如“如果时间晚于10点,就睡觉,否则继续刷视频”。这时候加上 else 就行了。
if (hour > 22) {
printf("该睡觉了\n");
} else {
printf("再看一会儿\n");
}
这个结构特别适合处理非黑即白的场景,像登录验证、成绩评级都很常用。
多个条件?用 else if
现实中的选择往往不止两个。比如打游戏,血量低于10%赶紧吃药,30%以下小心点,50%以上随便浪。这时候就得用 else if 来串联多个判断。
if (hp < 10) {
printf("快吃药!\n");
} else if (hp < 30) {
printf("小心点打\n");
} else if (hp < 50) {
printf("稳着来\n");
} else {
printf("冲啊!\n");
}
注意顺序很重要,程序是从上往下一个个试,一旦满足就停下来,不会继续往后走了。
逻辑组合:用 && 和 || 搭积木
有些条件得同时满足才行。比如进网吧要年满18岁并且带身份证。C语言里用 && 表示“且”,|| 表示“或”。
if (age >= 18 && hasID == 1) {
printf("可以进\n");
}
if (weather == 0 || time < 12) {
printf("适合出门\n");
}
这种组合方式让判断更灵活,像用户权限控制、表单验证都靠它撑着。
switch:多选一的清爽写法
当你有一堆选项要对比同一个变量时,比如菜单选择1~5对应不同功能,用一堆 else if 会显得啰嗦。这时候 switch 更清晰。
switch(choice) {
case 1:
printf("打开文件\n");
break;
case 2:
printf("保存文件\n");
break;
case 3:
printf("退出程序\n");
break;
default:
printf("无效选项\n");
}
每个 case 是一个可能的值,default 是兜底选项。别忘了 break,不然会一直往下跑,出现“穿透”现象。
条件判断是编程的骨架之一。掌握好 if、else、switch 这些工具,写出来的程序才会有“脑子”,能根据不同情况做出反应。实际写代码时,结合具体需求选合适的结构,逻辑清楚了,程序自然就好懂也好改。