C程序设计教案102课时——Switch语句.docx
教案序号10周次授课形式新授授课章节名称Switch语句教学目的掌握switch语句教学重点掌握switch语句教学难点掌握switch语句使用教具机房课外作业课后体会授课主要内容> 4.7用SWitCh语句实现多分支选择结构> SWitCh语句用来实现多分支选择结构学生成绩分类85分以上为W等7084分为,Ir等6069分为,C等人口统计分类按年龄分为老、中、青、少、儿童>4.7用SWiteh语句实现多分支选择结构例4.6要求按照考试成绩的等级输出百分制分数段,A等为85分以上,B等为7084分,C等为6069分,D等为60分以下。成绩的等级由键盘输入。>4.7用switch语句实现多分支选择结构A解题思路: 判断出这是一个多分支选择问题 根据百分制分数将学生成绩分为4个等级 如果用if语句,至少要用3层嵌套的if,进行3次检查判断 用switch语句进行一次检查即可得到结果#inc1ude<stdio.h>intmain()chargrade;scanf(',%c,grade);printf(,Yourscore:");SWitCh(grade)case,A,:printf(,85-100nM);break;case'B,:printf(',70-84n',)reak;case,C,:Printfr6069n");break;case'D,:printf(,<60n,r)reak;defau1t:printf(,enterdataeor!n");return0;)#inc1ude<stdio.h>intmain()chargrade;scanf(M%cH,&grade);printf(nYourscore:'*);switch(grade)case,A,:printf(',85-100nM);break;case'B,:printf(,70-84n,)reak;case,C,:Prii1tf("6069n");brcak;case'D,:printf(',<6On,)5break;defau1t:printf(',enterdataerror!n,');)return0;)#inc1ude<stdio.h>intmain()chargrade;scanf(,%cngrade);printf(,Yourscore:");SWitCh(grade)case,A,:printf(,85-100n,)reak;caseB,:printf(',70-84n',)reak;case,C,:printf(,6069n,)reak;case'D,:printf(',<6On,r)5break;defau1t:printf(,enterdataerror!n);return0;#inc1ude<stdio.h>intmain()chargrade;scanf(M%cH,&grade);PriI1tf(”Yourscore:”);switch(grade)case,A,:printf(,85-100nM);break;case,B,:printf(,70-84n',)reak;case,C,:printf(',6069n,)reak;case'D,:printf(,<60n,r)reak;defau1t:printf(,enterdataerror!n,');)return0;)#inc1ude<stdio.h>intmain()chargrade;scanf(M%cH,&grade);printf(,Yourscore:'*);switch(grade)case,A,:printf(',85-100nM);break;case'B,:printf(,70-84n',)reak;case'C':Printf(“6069n");brcak;case'D,:printf(,<6On,)5break;defau1t:printf(',enterdataerror!n);)return0;)> SWitCh语句的作用是根据表达式的值,使流程跳转到不同的语句> SWitCh语句的一般形式:switch(表达式)case常量1:语句1case常量2:语句2 i case常量n:语句ndefau1t:语句n+1)> SWitCh语句的作用是根据表达式的值,使流程跳转到不同的语句> SWitCh语句的一般形式:switch(表达式)case常量1:语句1case常量2:语句21,icase常量n:语句ndefau1t:语句n+1)scanf(M%cH,&grade);printf(,Yourscore:'*);switch(grade)case,A,:printf(',85-100nM);break;case'B,:Printfr7084n”);break;case'C':Printf("6069n");brcak;case'D,:printf(',<6On,)5break;defau1t:printf(',enterdataerror!n);)scanf(,%c,grade);PrintfeYO1IrSCOre:”);switch(grade)case,A,:printf(,85-100n,)reak;case'B,:printf(,70-84n',)reak;case,C,:printf(',60-69n,)reak;case'D,:printf(',<6On,)5break;defau1t:printf(,enterdataerror!n,');scanf(,*%cn,grade);PrintfrYOUrSCOre:”);switch(grade)case,At:case,Bt:case'C':Printf("6069'n");break;case'D,:printf(,<6On,r)5break;defau1t:printf(',enterdataerror!n,');)例4.7编写程序,用SWitCh语句处理菜单命令。>解题思路:在许多应用程序中,用菜单对流程进行控制,例如从键盘输入一个,A,或k字符,就会执行A操作,输入一个,或3字符,就会执行B操作,等等。#inc1ude<stdio.h>intnain()voidaction1(intent),action2(int,int);charch;inta=15,b=23;ch=getchar();switch(ch)case,a,:caseA,:action1(a,b);break;case'b,:case'B':action2(a,b);break;defau1t:putchar(a,);)return0;)#inc1ude<stdio.h>intmain()voidaction1(int,int),action2(int,int);charch;inta=15,b=23;ch=getchar();switch(ch)case,a,:caseA,:action1(a,b);break;case,b,:caseB,:action2(a,b);break;defau1t:PiItCharca');)return0;)#inc1ude<stdio.h>intmain()voidaction1(intjnt),action2(int,it);charch;inta=15,b=23;ch=getchar();switch(ch)case,a,:casetA,:action1(a,b);break;case,b,:case'B':action2(a,b);break;defau1t:putchar(ta,);)return0;)>这是一个非常简单的示意程序>实际应用中,所指定的操作可能比较复杂: A:输入全班学生各门课的成绩 B:计算并输出每个学生各门课的平均成绩 C:计算并输出各门课的全班平均成绩 D:对全班学生的平均成绩由高到低排序并输出可以按以上思路编写程序,把各action函数设计成不同的功能以实现各要求