在C语言中的switch case语句

1. switch case语句概述

switch case语句是一种常见的控制语句,通常用于对某个变量的值进行判断,然后根据不同的值执行不同的代码块。根据不同的情况,switch case语句可以取代一系列if else语句,使代码更加简洁明了。

switch case语句通常包含一个被测试的变量(可以是整型、字符型、枚举等),并且根据变量的不同值执行不同的代码块。语法结构如下:

switch (expression){

case constant1:

statement(s);

break;

case constant2:

statement(s);

break;

...

case constantN:

statement(s);

break;

default:

statement(s);

}

其中,expression表示被测试的变量,constant1、constant2、...、constantN表示要比较的值,statement(s)表示需要执行的代码块。default语句是可选的,表示在其他情况下需要执行的代码块。

2. switch case语句的执行流程

当执行switch case语句时,会首先计算expression的值。然后程序会依次比较expression的值与每个case后的常量值,找到匹配的值后执行该case下的语句块,并直接跳转到switch case语句块结束处继续执行。如果没有匹配的值,则执行default中的代码块。

需要注意的是,如果在case块中没有break语句,程序会继续执行下一个case块中的语句,直到遇到break语句为止。

3. switch case语句的应用

3.1. 基本应用

下面是一个简单的例子,演示如何在C语言中使用switch case语句:

#include

int main(){

int num;

printf("请输入数字(1、2或3):");

scanf("%d", &num);

switch (num){

case 1:

printf("你输入的是1\n");

break;

case 2:

printf("你输入的是2\n");

break;

case 3:

printf("你输入的是3\n");

break;

default:

printf("你输入的不是1、2或3,程序结束\n");

}

return 0;

}

在该例子中,首先读入一个整数,然后根据该整数的值进行判断,分别打印出不同的结果。

3.2. 使用switch case语句做菜单

在实际应用中,我们经常需要制作菜单。使用switch case语句,可以快速实现菜单功能。

下面是一个简单的菜单程序:

#include

#include

int main(){

int choice;

do {

system("cls");

printf("1. 浏览\n");

printf("2. 添加\n");

printf("3. 修改\n");

printf("4. 删除\n");

printf("5. 退出\n");

printf("请输入你的选择:");

scanf("%d", &choice);

switch (choice){

case 1:

printf("执行浏览操作\n");

break;

case 2:

printf("执行添加操作\n");

break;

case 3:

printf("执行修改操作\n");

break;

case 4:

printf("执行删除操作\n");

break;

case 5:

printf("程序结束\n");

break;

default:

printf("输入错误,请重新选择\n");

break;

}

system("pause");

} while (choice!=5);

return 0;

}

该程序包含一个菜单,供用户选择不同的操作。使用do-while循环,使得用户可以一直执行菜单操作,直到选择退出为止。

3.3. 利用switch case语句完成运算

除了上述应用,switch case语句还可以用于完成运算。比如,下面的程序演示如何使用switch case语句实现不同运算:

#include

int main(){

double num1, num2, result;

char operator;

printf("请输入第一个数字:");

scanf("%lf", &num1);

printf("请输入运算符:");

scanf(" %c", &operator);

printf("请输入第二个数字:");

scanf("%lf", &num2);

switch (operator){

case '+':

result = num1 + num2;

break;

case '-':

result = num1 - num2;

break;

case '*':

result = num1 * num2;

break;

case '/':

if (num2==0){

printf("除数不能为0,程序结束\n");

return 0;

}

result = num1 / num2;

break;

default:

printf("无法识别的运算符,程序结束\n");

return 0;

}

printf("%.2lf %c %.2lf = %.2lf\n", num1, operator, num2, result);

return 0;

}

该程序读入两个数字和一个运算符,根据运算符的不同,执行相应的运算,并输出结果。

4. 总结

switch case语句是一种常见的控制语句,通常用于对某个变量的值进行判断,然后根据不同的值执行不同的代码块。使用switch case语句可以使代码更加简洁明了。除了基本应用外,switch case语句还可以用于菜单制作和运算等方面。需要注意的是,在使用switch case语句时,一定要注意break语句的使用,避免出现不必要的错误。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

后端开发标签