C语言选择结构程序教学设计.doc

上传人:scccc 文档编号:12258946 上传时间:2021-12-02 格式:DOC 页数:15 大小:240.50KB
返回 下载 相关 举报
C语言选择结构程序教学设计.doc_第1页
第1页 / 共15页
C语言选择结构程序教学设计.doc_第2页
第2页 / 共15页
C语言选择结构程序教学设计.doc_第3页
第3页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C语言选择结构程序教学设计.doc》由会员分享,可在线阅读,更多相关《C语言选择结构程序教学设计.doc(15页珍藏版)》请在三一文库上搜索。

1、、教学思想(包括教学背景、教学目标)1、关于“ C 语言”计算机的本质是“程序的机器” ,程序和指令的思想是计算机系统中最 基本的概念,只有懂得程序设才能懂得计算机,真正了解计算机是怎样工作 的;通过学习程序设计可以使我们进一步了解计算机的工作原理,更好地理 解个应用计算机,学会用计算机处理问题的方法。 C 语言作为一种高级程序 设计语言,相比其他高级程序设计语言有着公认的一些特点,比如语言本身 简介,生成的代码质量高,使用灵活等。它既可以编写计算机系统软件又可 以编写各类应用软件。 C 语言作为一种简洁高校并且支持结构化编程的程序 设计语言,在讲究效率的时代,对于帮助学习者掌握程序设计的基本

2、思想和 方法,进而更好地理解计算机的工作,会有极大的帮助。2、关于选择结构程序设计选择结构程序设计是结构化程序设计的 3 种基本结构之一, 是程序设计 中常用的结构。前面介绍的顺序结构里,程序中的所有语句按照书写顺序依 次执行。而在日常生活中,处理事情的顺序并不都是按部就班的顺序进行, 有时会根据某些条件进行选择。比如在进行周末活动安排时,我们可以说: “如果天气好,我们就去郊游,否则我们就去体育馆打球。 ”在这样安排中, 可以看到,“郊游”和“打球”哪个动作实际执行依赖于“天气好”这个条 件是否满足。在程序设计中,上述安排就要用选择结构来实现。选择结构的作用是根 据所给条件的真假,决定程序的

3、运行途径。在上述实例中, “天气好?”是 控制条件,它的作用是决定程序的流程,如果天气确实好,则条件为真,进 行“郊游”这个活动,如果天气不好,则条件为假,进行“打球”这个活动。 “郊游”和“打球“两个活动只进行一个,该选择结构结束后,再执行下面 的语句。3、教学目标知识与技能目标:掌握关系运算、逻辑运算和 C 语言条件语句的使用。 过程与方法目标:通过课程举例,程序的比较和运行和程序流程图的使 用,让学生加深记忆,理解条件语句的执行顺序。情感态度与价值观目标:学习条件语句使学生进一步了解程序,对程序 设计产生学习兴趣。4、教学重点与难点重点: if 语句、 switch 语句的使用难点:if

4、 语句的嵌套、课程设计思路(包括教学方法、教学手段)教学步骤教学内容设计意图 表达方式关系运算符:用来对两个数值进行比较的比较运算符语言提供种关系运算符:1、学习关 (小于 )=(小于或等于)系运算和 (大于 )=(大于或等于)关系表达 = (等于 ) != (不等于 )式关系表达式用关系运算符将两个数值或数值表达式连接起来的式子表达式 关系运算符 表达式 1 真选择结构关系表达式的值是一个逻辑值 0 假程序设计例:中条件语a+b> c+d(a=3) < (b=5)句的使用a'!= A' (a>b)=(c<d)需要使用关系运算3种逻辑运算符:和逻辑运&a

5、mp;& (逻辑与)|(逻辑或)!(逻辑非)算。使用简&& 和|是双目 (元)运算符单的例子!是一目 (元)运算符便于学生逻辑表达式理解。在教2、学习逻表达式 逻辑运算符 表达式 学过程中辑运算和例:由简入难逻辑表达判断年龄在 13 至 17 岁之内?式以及运age>=13 && age<=17算符的优判断年龄小于12或大于 65?先次序age12 | age65 逻辑运算符的优先次序! && |( !为三者中最高)与其他运算符的优先次序!(高)算术运算符 关系运算符&& 和 | 赋值运算符 例:(低)判别某一

6、年是否闰年,用逻辑表达式表示闰年的条件是符合下面二者之一:能被 4整除,但不能被 100整除,如 2008能被 400整除,如 2000(year % 4 = 0 && year 100 !=0)| year % 400= 0如果表达式值为 1,则闰年;否则为非闰年 例:2、学习逻 辑运算和 逻辑表达 式以及运 算符的优 先次序例:求 ax2 bx c 0 方程的根。由键盘输入 a,b,c。假设 a,b,c的值任意,并不保证 b 2 4ac 0 需要在程序中进行判别,如果 b 2 4ac 0 ,就计算并输出方程的两个实根,否则就输出方程无实根”的信息。3、使用 if 语句实现

7、选择结构 和条件判 断语句左边为顺序结构的程序流程图,右边为选择结构程序流程图。比 较它们的之间区别。#include <stdio.h>选择结构 和条件判 断语句是 本章的重 难点,对于 初学者有 一定的难 度,这一部 分内容采 用大量的 例题以便 学生理解 和掌握选 择语句的 用法。#include <math.h>int main ( )double a,b,c,disc,x1,x2,p,q; scanf("%lf%lf%lf",&a,&b,&c); disc=b*b-4*a*c;if (disc<0)通过例题 的

8、实际运 用让学生 了解条件 判断的作 用选择结 构的使用。printf( “ has not real rono”ts);else p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q;printf( “ real roots:n” ,x1,x2); return 0; 当程序输入 6,3,1 时,它的运行结果是什么?当程序输入2,4,1 时,它的运行结果是什么?例:输入两个实数,按代数值由小到大的顺序输出这两个数。 解题思路:3、使用 if 语句实现 选择结构 和条件判 断语句只需要做一次比较,然后进行一次交换即可 用 if 语句实现条件判断

9、关键是怎样实现两个变量值的互换 #include <stdio.h> int main() float a,b,t;scanf("%f,%f",&a,&b);if(a>b) t=a; a=b; b=t; printf("%5.2f,%5.2fn",a,b); return 0;例: 输入 3 个数 a,b, c,要求按由小到大的顺序输出。 解题思路:可以先用伪代码写出算法:if a>b,a和 b对换(a是 a、b中的小者)if a>c,a和 c 对换(a 是三者中最小者)if b>c , b 和 c 对

10、换( b 是三者中次小者)顺序输出 a,b, c#include <stdio.h> int main() float a,b,c,t; scanf("%f,%f,%f",&a,&b,&c); if(a>b) 如果 a>b,将 a 和 b 对换 t=a; a=b; b=t; a 是 a、 b 中的小者if(a>c) 如果 a>c,将 a 和 b 对换 t=a; a=c; c=t; a 是 a、 c 中的小者 if(b>c) 如果 b>c,将 a 和 b 对换 t=b; b=c; c=t; b 是 b、

11、c 中的小者 printf("%5.2f,%5.2f,%5.2fn",a,b,c);return 0; 运行程序并输出结果。3 、使用 if 语句实现 选择结构 和条件判 断语句if 语句的一般形式:if ( 表达式 ) 语句 1 else 语句 2 最常用的 3种if 语句形式:1. if ( 表达式 ) 语句 1(没有 else 子句 )2. if (表达式) 语句 1else 语句 2(有 else子句 )3. if (表达式)语句语句语句else if ( else if (表达式)表达式)else if (表达式)语句else语句 m+1通过例题 的学习引 入 i

12、f 语句 的格式和 使用方法。 让学生自 己找出规 律加深记 忆。(在 else 部分又嵌套了多层的 if 语句 )3 、使用 if 语句实现 选择结构 和条件判 断语句运用例题 巩固知识, 实现多重 选择语句 的使用。s<250km没有折扣250s<5002% 折扣500s<10005% 折扣1000s<20008% 折扣2000s<300010%折扣3000s15%折扣根据货物重量 w和运距 s,求运费 f 。if( ) 语句 1 else 语句 2例:某运输公司吨公里基本运费为p,根据距离 s 的远近计费标准如下:main( )float p,s,w,d,f

13、;scanf(“%f %f %f ”,&p,&s,&w);if(s>=3000) d=0.15;else if(s>=2000) d=0.10;else if(s>=1000) d=0.08;else if(s>=500) d=0.05;else if(s>=250) d=0.02;else d=0.0;f=p*w*s*(1-d);printf( “f=%15.2f ”, f);选择结构的嵌套:在 if 语句中又包含一个或多个 if 语句称为 if 语句的嵌套 一般形式:else 总是与它上面最近的未配对 的 if 配对else教学步骤教学

14、内容设计意图 表达方式3、使用 if 语句实现 选择结构 和条件判 断语句if( ) 语句 3else 语句 4 内嵌 if例:有一函数 :1(x0)y0(x0)1(x0)编一程序,输入一个 x 值,要求输出 解题思路:方法 1(1) 先后用 3 个独立的 if 语句处理: 输入 xscanf("%d",若 x < 0, 则 y =-1if(x<0)若 x = 0, 则 y = 0if(x=0) y若 x > 0, 则 y = 1if(x>0)输出 x 和 yprintf("x=%d解题思路:方法 2(2) 用一个嵌套的 if 语句处理:

15、输入 x scanf("%d",&x); 若 x < 0, 则 y = -1 if(x<0) y=-1; 否则 else若 x = 0, 则 y = 0 if(x=0) y=0; if(x=0) y=0;否则 y = 1输出 x和 y else y=1;printf("x=%d,y=%d相应的 y 值。&x);y = -1;= 0;y = 1;,y=%dn",x,y);scanf("%d",&x);if (x>=0)if (x>0) y=1;else y=0;else y=-1;prin

16、tf("x=%d,y=%dn",x,y);n",x,y);引用例题 使用多种 方法说明 if 的嵌套使 用,便于理 解和记忆。4、条件运 算符和条 件表达式有一种 if 语句,当被判别的表达式的值为“真”或“假” 时, 都执行一个赋值语句且向同一个变量赋值如: if (a>b)max=a;elsemax = (a > b) ? a : b;max=b;1、条件表达式的一般形式<表达式 1> ? <表达式 2> : <表达式 3>2、运算规则先计算表达式 1,若为非 0,则以表达式 2 的值作为条件表达式 的值;否则,

17、以表达式 3 的值为条件表达式的值。右结合3、优先级算术 关系 逻辑运算 (!除外 ) 条件运算 赋值运算 高低(1) 输出 x 和 y 当中的最大值z=x>y ? x : y ; printf( “ max=%d ”,z);或 printf( “ max=%d ” ,x>y?x:y);或 x>y?printf ( “%d”,x) : printf ( “%d”,y);(2) a>b?a:b+1 等价于 a>b?a:(b+1) 而不是 (a>b?a:b)+1(3) a>b?a:c>d?c:d 等价于 a>b?a:(c>d?c:d)(4

18、) x>y?1:5.6 表达式的值的类型取高的条件运算 符和条件 表达式相 对而言比 较简单, 在 教学过程 中列举表 达式的一 般形式并 举例说明。教学步骤教学内容设计意图 表达方式4、条件运 算符和条 件表达式例: 输入一个字符,判别它是否大写字母,如果是,将它转换 成小写字母;如果不是,不转换。然后输出最后得到的字符。 #include <stdio.h> int main()char ch; scanf("%c",&ch);ch=(ch>='A' && ch<='Z )?(ch+32):c

19、h; printf("%cn",ch);return 0;5、用 switch 语句实现 多分支选 择结构switch 语句的作用是根据表达式的值,使流程跳转到不同的语句 switch 语句的一般形式: switch (表达式) case 常量 1 :语句 1case 常量 2 :语句 2case 常量 n :语句 n default : 语句 n+1switch 语句的作用是根据表达式的值,使流程跳转到不同的语句 switch 语句的执行过程:当 switch 后的表达式的值与某一个 case 后的常量表达式的值相等 时,执行其后的语句;若无匹配,则执行 default

20、后的语句 break 语句 使流程跳出 switch 结构, 终止 switch 语句的执行。例:要求按照考试成绩的等级输出百分制分数段, A 等为 85 分以上, B等为 70 84分, C等为 6069分 ,D 等为 60分以下 。成绩的 等级由键盘输入。#include <stdio.h>int main() char grade;scanf("%c",&grade);printf("Your score:"); switch(grade) case 'A': printf("85 100n"

21、);break; case 'B': printf("70 84n");break; case 'C': printf("60 69n");break; case 'D': printf("<60n");break; default: printf("enter data error!n");return 0;在程序运行中,若输入 F,则程序输出的值是什么?若把break语句删除会出现什么结果?若把 A 和 B 后面的语句都删除会有什么 结果?Switch 语

22、句作为本 章的重点 需要学生 掌握并使 用,同样采 用举例的 方式将强 理解和记 忆。三、教学特色(总结教学特色,教学效果)1. 教学特色本次讲课主要采用了演示操作, 任务驱动的教学方法, 例如我提倡的是师生 合作探索的方法, 而不是教师自己独自讲解, 这样能更好地进行交流和沟通, 让 学生自己发现问题、解决问题,更能激发学生的求知欲, 帮助学生理解选择意义, 和运行结果。对课堂的设计, 贯彻以教师为主导, 以学生为主体,以问题为基础, 以能力、方法为主线,有计划培养学生的自学能力、 观察和实践能力、 思维能力、 应用知识解决实际问题的能力和创造能力为指导思想。并且能从各种实际出发, 充分利用各种教学手段来激发学生的学习兴趣,体现了对学生创新意识的培养。2. 教学效果 本次讲课效果总体还是不错的,在整个教学过程中,以引导学生发现问题、 分析问题、 解决问题,注重培养学生的独立思考的能力。 在设计该课时是用了循 序渐进的方法,先让每个学生都能在老师的引导下,独立解决一个简单的问题, 让学生对选择程序设计有一个直观的理解;然后再传授 if 语句和 switch 的结构 和执行过程,让学生真正懂得 if 语句和 switch 语句的实际内涵。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1