标签:
switch语句基本格式
switch(表达式){ case 常量表达式1: 语句1; case 常量表达式2: 语句2; case 常量表达式3: 语句3; case 常量表达式4: 语句4; case 常量表达式5: 语句5; case 常量表达式6: 语句6; default: printf("其他"); }
1 #include <stdio.h> 2 3 int main(int argc, const char * argv[]) { 4 5 //提示用户点菜,1-7 6 printf("本店开张,请点菜,请输入序号1-7\n"); 7 //定义变量,接收用户输入的内容 8 int no; 9 //接收用户输入的内容 10 scanf("%d",&no); 11 12 if (no<1 || no > 7) { 13 printf("本店厨师还在写代码,还没时间更新菜谱\n"); 14 return 0; 15 } 16 17 //判断(switch) 18 // 1 2 3 4 5 19 switch(no){ 20 21 case 1: printf("玉米炒葡萄\n"); 22 case 2: printf("月饼炒辣椒\n"); 23 case 3: printf("爆炒妙脆角\n"); 24 case 4: printf("番茄炒卤蛋\n"); 25 case 5: printf("南瓜炒猪肝\n"); 26 case 6: printf("苹果炒西瓜\n"); 27 case 7: printf("天地无极\n"); 28 29 } 30 31 return 0; 32 }
本店开张,请点菜,请输入序号1-7 4 番茄炒卤蛋 南瓜炒猪肝 苹果炒西瓜 天地无极
case语句穿透问题:
什么是case穿透? 某个case语句执行完成后,并没有结束,而直接向下执行其他的case语句 这种现象就称之为case穿透 如何防止case穿透? 我们需要在每一个case语句结束之后,加上一句话:break; break 作用 是结束switch语句
1 #include <stdio.h> 2 3 int main(int argc, const char * argv[]) { 4 5 6 //提示用户点菜,1-7 7 printf("本店开张,请点菜,请输入序号1-7\n"); 8 //定义变量,接收用户输入的内容 9 int no; 10 //接收用户输入的内容 11 scanf("%d",&no); 12 13 if (no<1 || no > 7) { 14 printf("本店厨师还在写代码,还没时间更新菜谱\n"); 15 //return 0; 16 } 17 18 //判断(switch) 19 // 1 2 3 4 5 20 switch(no){ 21 22 case 1: printf("玉米炒葡萄\n");break; 23 case 2: printf("月饼炒辣椒\n");break; 24 case 3: printf("爆炒妙脆角\n");break; //break作用是结束switch语句 25 case 4: printf("番茄炒卤蛋\n");break; 26 case 5: printf("南瓜炒猪肝\n");break; 27 case 6: printf("苹果炒西瓜\n");break; 28 case 7: printf("天地无极\n");break; 29 30 } 31 32 printf("xxxxxxx\n"); 33 34 } 35 36 return 0; 37 }
本店开张,请点菜,请输入序号1-7 4 番茄炒卤蛋 xxxxxxx
标签:
原文地址:http://www.cnblogs.com/kongweiiwei/p/4621510.html