switch 的简单用法

本文介绍了两个使用C语言编写的程序示例:第一个程序让用户输入成绩并转换为等级(A到E),第二个程序则相反,根据输入的成绩等级返回对应的成绩范围。

#include <stdio.h>
int main()
{
double score; //score:成绩
printf(“请输入你的成绩:”);
scanf("%lf",&score);
switch((int)(score/10)) //switch(变量表达式)
{
case 10:printf(“A(优秀)\n”);break;
case 9:printf(“B(良好)\n”);break;
case 8:printf(“C(合格)\n”);break;
case 7:printf(“D(及格)\n”);break;
case 6:
case 5: //break:跳出语句
case 4:
case 3:
case 2:
case 1:printf(“E(不及格)\n”);break;
default:printf("\a\n"); //如果超出就给与警告
}
}

#include <stdio.h>
int main()
{
char grade;
printf(“输入A,B,C,D等级:”);
scanf("%c",&grade); //输入单个字符
switch(grade)
{
case ‘A’:printf(“90~100\n”);break;
case ‘B’:printf(“80~89\n”);break;
case ‘C’:printf(“70~79\n”);break;
case ‘D’:printf(“60~69\n”);break;
default:printf(“NO!!!”); //如果没你输入的信息就返回NO
}
return 0;
}

### switch语句的基本使用方法 `switch`语句是一种多条件分支结构,它根据表达式的值匹配不同的执行路径。相比`if-else`语句,`switch`语句在处理多个固定值的条件判断时更为简洁和高效。 `switch`语句的基本语法如下(以C语言和JavaScript为例): ```c switch (expression) { case value1: // 执行语句 break; case value2: // 执行语句 break; ... default: // 默认执行语句 } ``` 在执行过程中,`switch`会计算括号内的表达式值,并依次与每个`case`后的常量值进行比较。如果匹配成功,则执行对应的代码块;如果没有匹配的`case`,则执行`default`部分(如果存在)[^2]。 --- ### 使用注意事项 1. **每个`case`后必须有语句**:虽然技术上允许空的`case`,但为了代码清晰和避免错误,建议为每个`case`提供明确的执行语句。 2. **使用`break`语句**:`break`用于跳出`switch`结构,防止代码继续执行后续的`case`或`default`部分,这种现象称为“穿透”(fall-through)。 3. **`default`可选**:`default`用于处理没有匹配的情况,虽然不是必须的,但在多数情况下推荐使用,以增强程序的健壮性[^1]。 --- ### 示例 #### C语言示例 以下是一个简单的C语言示例,展示如何使用`switch`语句来判断数字并输出对应的星期名称: ```c #include <stdio.h> int main() { int day = 3; switch (day) { case 1: printf("Monday\n"); break; case 2: printf("Tuesday\n"); break; case 3: printf("Wednesday\n"); break; case 4: printf("Thursday\n"); break; case 5: printf("Friday\n"); break; case 6: printf("Saturday\n"); break; case 7: printf("Sunday\n"); break; default: printf("Invalid day\n"); } return 0; } ``` #### JavaScript示例 以下是一个JavaScript中使用`switch`语句的示例,用于根据用户输入的月份返回季节信息: ```javascript function getSeason(month) { switch (month) { case "March": case "April": case "May": return "Spring"; case "June": case "July": case "August": return "Summer"; case "September": case "October": case "November": return "Autumn"; case "December": case "January": case "February": return "Winter"; default: return "Invalid month"; } } console.log(getSeason("July")); // 输出 Summer ``` --- ### 总结 `switch`语句适用于多个固定值的判断场景,可以提高代码的可读性和执行效率。使用时需要注意每个`case`后加上`break`以避免“穿透”,并合理使用`default`来处理默认情况[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值