Switch选择语句:
1、比较if-else语句与switch语句,都是实现多选一结构,但当条件表达式增多时,使用switch语句会更加简洁易懂。
2、switch选择语句的流程图如下:
3、switch的语法格式如下:
switch(表达式)
{
case判断值1:
程序语句1;
:
break;
case判断2:
程序语句2;
:
break;
:
case判断值n:
程序语句n;
:
break;
:
default:
default程序语句;
:
}
说明:switch的括号部分,其中所放的表达式是要与大括号里的case标签内所定义的判断值进行比较的变量。
4、案例程序如下:
#include <stdio.h>
#include <stdlib.h>
int main()
{
char select;
puts(" (1) 排骨快餐");
puts(" (2) 海鲜快餐");
puts(" (3) 鸡腿快餐");
puts(" (4) 鱼排快餐");
printf(" 请输入您要购买的快餐:");
select=getche();/*输入字符并存入变量select*/
printf("\n===================================\n");
switch(select)
{
case '1': /*如果select等于1*/
puts("排骨快餐一份75元");
break; /*跳出switch*/
case '2': /*如果select等于2*/
puts("海鲜快餐一份85元");
break; /*跳出switch*/
case '3': /*如果select等于3*/
puts("鸡腿快餐一份80元");
break; /*跳出switch*/
case '4': /*如果select等于3*/
puts("鱼排快餐一份60元");
break; /*跳出switch*/
default: /*如果select不等于1,2,3,4中的任何一个*/
printf("选项错误\n");
}
printf("===================================\n");
system("pause");
return 0;
}
运行结果如下:
分析:
第15行根据输入的select字符决定执行哪一行的case,例如当输入的字符为2时,会输出字符串“海鲜快餐一份85元”,break表示直接跳出switch条件语句,不会执行下一个case语句。
第29行输入的字符若不符合所有case条件,则执行default后的程序区块。