内容正文:
课 题
4.4switch语句
教 学
目 的
1、掌握switch语句格式
2、掌握 switch语句的执行流程
教 材
分 析
教学重点
switch语句的执行过程
教学难点
switch语句的应用
课时安排
1
教学方法
讲授与演示法相结合讨论法
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
第一课时
一 复习引入
当分支的情况越多,if的层次分越多!于是出现了开关语句
二、新授switch语句
语法1: switch (表达式)
{ case C1:语句序列1;
case C2:语句序列2;
……
case Cn:语句序列n;
default:语句序列n+1; }
语法2:switch (表达式)
{ case C1:语句序列1;break;
case C2:语句序列2;break;
……
case Cn:语句序列n;break;
default: 语句序列n+1;break; }
说明:(1)switch后面的()内的表达式,ANSI标准允许他为任何类型
(2) case后的常量表达式一般不可以为实型数据。
(3) 当表达式的值与某个case后面的常量表达式的值相等时,
(5) 每个case后面的常量表达式的值必须互不相同。否则就 会出现互相矛盾的现象(对表达式的同一个值,有两种或多种执行方案)。
(6) 各个case与default出现次序不影响结果。
(7) break的使用(终止),是可选项
(8) 多个case可以共用一组语句
例:要求按照考试成绩的等级输出百分制分数段,用
switch语句实现: switch(grade)
{ case ′A′∶printf(″85~100\n″);
case ′B′∶ printf (″70~84\n″);
case ′C′∶ printf (″60~69\n″);
case ′D′∶ printf (″<60\n″);
default∶( printf ″error\n″); }
功能:当表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,若所有的case中的常量表达式的值都没有与表达式的值匹配的,就执行default后面的语句。
第二课时
一 复习引入
switch语句语法
二、实例
1、运输公司对用户计算运费。路程(s)越远,每公里运费越低。标准如下:
s<250km 没有折扣
250≤s<500 2%折扣
500≤s<1000 5%折扣
1000≤s<2000 8%折扣
2000≤s<3000 10%折扣
3000≤s 15%折扣
设每公里每吨货物的基本运费为p,货物重为w,距离为s,折扣为d,则总运费f的计算公式为:f=p*w*s*(1-d)
程序代码略
2、 main()
{ char x=‘B’;
switch(x)
{ case ‘A’: printf(“It is A.”);
case ‘B’: printf(“It is B.”);
case ‘C’: printf(“It is C.”);
default: printf(“other.”);
} }
1. 3、main()
{ int x=1,y=0,a=0,b=0;
switch(x)
{ case 1: switch(y)
{ case 0: a++;break;
case 1: b++;break; }
case 2: a++;b++;break;
case 3: a++;b++; }
printf("a=%d,b=%d
",a,b);
}
四、小结。 1、 switch语句2、 在编写程序过程中,注意分支的作用范围,及复合语句的运用
学科网(北京)股份有限公司
$$