之前给大家介绍过关于if的一些小用法,在c语言中还有另外一个条件判断语句,那就是switch语句,今天我就给大家介绍一些关于switch的用法。
首先,我们先聊聊为什么要在已经拥有if语句的情况下还要再创建switch语句。那就是因为if语句虽然可以实现多分支结构,但是比较复杂、不够直观,而switch语句正好可以弥补这一缺点,能直接实现多分支选择。接下来先为大家介绍switch语句的语法格式。switch语句的语法格式:
switch(表达式)
{
case 常量表达式1 : 语句组 1 【break;】
case 常量表达式2 : 语句组 2 【break;】
。。。
case 常量表达式n : 语句组 n 【break;】
default : 语句组 n + 1 【break;】
}
在了解了switch的语法结构后,我给大家来个小例子吧,用switch语句编一个简单的计算器程序。
#include <stdio.h>
int main()
{
float a ;
float b ;
char c;
printf("please input expression: \ n");
scanf("%f%c%f",&a,&c,&b);
switch(c)
{
case '+': printf("%f\n",a+b); break;
case '-': printf("%f\n",a-b); break;
case '*': printf("%f"\n,a*b); break;
case '/': printf("%f\n",a/b); break;
default: printf("Input error\n");
}
return 0;
}
在这段程序中,如果没有break语句,那么就不会得到正确的结果,所以break语句表示当执行程序遇到它时就会自动跳出,不会执行下面的语句。由此可以知道,break在switch语句中的必要性。还有一点就是case后面的“常量表达式”的值必须是不同的。