学习随笔-break在switch语句中

 1 //实现输入数字,输出在一周中对应的日期
 2     int day = 0;
 3     scanf("%d", &day);
 4     //方法一
 5     if (1 == day)
 6         printf("星期一\n");
 7     else if (2 == day)
 8         printf("星期二\n");
 9     else if (3 == day)
10         printf("星期三\n");
11     else if (4 == day)
12         printf("星期四\n");
13     else if (5 == day)
14         printf("星期五\n");
15     else if (6 == day)
16         printf("星期六\n");
17     else if(7 == day)
18         printf("星期天\n"); //使用if...else...语句太过繁琐,使用switch语句
19     //方法二
20     switch (day)//判断day的值,输入的day可以看作是钥匙,与case匹配成功,则可以进入,*switch(整型表达式),括号里必须是整型
21     {
22     case 1:  //如果day == 1,则此处作为程序入口,*case n: ,n必须是整型常量表达式
23         printf("星期一\n"); 
24         break; //作为程序的出口,如果没有break,则会从入口开始,一直执行到break语句处,或执行到函数底部跳出函数;
25     case 2:  //可以将case理解为一个个通道   // ___________________________________________________
26         printf("星期二\n");                // |   -> pf  -> pf  -> pf  -> pf  -> pf  -> pf  -> pf -->  (pf:printf(case后的语句
27         break;                            // |  ^   |  ^   |  ^   |  ^   |  ^   |  ^   |  ^   |
28     case 3:                               // |case 1|case 2|case 3|case 4|case 5|case 6|case 7|  //没有break语句
29         printf("星期三\n");           // day-----^------^------^------^------^------^------^
30         break;                             //          ->跳出 ->跳出 ->跳出 ->跳出 ->跳出 ->跳出                        
31     case 4:                               // _________^______^______^______^______^______^______
32         printf("星期四\n");                // |   -> pf| -> pf| -> pf| -> pf| -> pf| -> pf| -> pf --> 执行到底部跳出   pf| 此处|代表break语句
33         break;                            // |  ^   |  ^   |  ^   |  ^   |  ^   |  ^   |  ^   |   pf:printf(case后的语句)
34     case 5:                               // |case 1|case 2|case 3|case 4|case 5|case 6|case 7|  //没有break语句
35         printf("星期五\n");           // day-----^------^------^------^------^------^------^      
36         break;
37     case 6:
38         printf("星期六\n");
39         break;
40     case 7:
41         printf("星期天\n");
42         break;
43     default:  //当每天case能够作为入口时,使用默认入口default
44         printf("请输入1~7内的数字");
45     }
46     //拓展
47     switch (day) //简单的 switch-case-break 灵活运用
48     {
49     default: //此处我们可以看到,default的位置并不影响其触发条件和作用,但建议书写在函数底部
50         printf("请输入1~7内的数字");
51     case 1:
52         //rintf("工作日\n");
53         //break;
54     case 2:
55         //printf("工作日\n");
56         //break;
57     case 3:
58         //printf("工作日\n");
59         //break;
60     case 4:
61         //printf("工作日\n");
62         //break;
63     case 5:
64         printf("工作日\n");
65         break;
66     case 6:
67         //printf("休息日\n");
68         //break;
69     case 7:
70         printf("休息日\n");
71         break;
72     }
 

 

posted @ 2021-07-19 15:22  犯雨星  阅读(113)  评论(0编辑  收藏  举报