C语言-第3章分支结构教学案.doc_第1页
C语言-第3章分支结构教学案.doc_第2页
C语言-第3章分支结构教学案.doc_第3页
C语言-第3章分支结构教学案.doc_第4页
C语言-第3章分支结构教学案.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言教学案第三章 姓名:_ 小组:_ 时间:_第3章 分支结构程序设计(选择结构)本章要点1、掌握if、if-else、if的嵌套语句的语法结构及编程2、掌握switch语句的语法结构及编程总课时123.2.1 单分支if语句的使用学习目标:1、理解选择结构的概念和特点;2、掌握单分支if语句的语法结构、执行过程和基本用法,学会正确书写if语句;4、能正确阅读if语句程序,会使用if语句编写、调试并运行程序。课前准备:预习P30-32(预习后,将学案上知识点在课本上做记号,并完成相应预习题)课时分配:2课时活动课堂活动一、发现问题(目标了解分支结构的意义)实例:从键盘上输入一个数,求这个数的平方根。算法:发现问题:活动二、解决问题(目标掌握分支结构)小结知识点:1、在程序设计中,根据条件是否满足,从给定的两组操作中选择其中之一进行执行,这种结构称_或_结构。2、流程图:思考:从键盘输入一个数,若为正数和0则求其平方根,否则不予处理。算法:活动三、预习交流(目标了解单分支选择结构)x=0语句组1小结知识点:观察左侧流程图,思考以下问题:1、x=0是 ;2、左图中,供有 种选择(分支);3、若x=0的值为_时,则计算机会执行分支语句组1,否则不予处理。 N(假) Y(真)知识点:1.if语句的一般形式: 2.书写易错点:条件表达式需用 括起来。分支中各语句应以 结尾。当分支中有若干条语句,则需用 括起来形成复合语句,且其后 (加/不加)分号。活动四:自主学习(目标掌握单分支if的简单用法)1、观察下列语句,思考:(1) if (ab) printf(%d,a);(2) if (ab) c=a; c=a+b;(3) if (ab) c=a; c=b;c=a+b;语句的含义: 语句的含义: 语句中ab是 ,书写时用 括起来。if语句可写在 行,也可写在 行,注意观察每行的结尾,分支中各语句结尾均有 (符号),但 后没有。在(2)(3)两语句段中的不同处画上横线,语句(2)中的c=a+b; (属于/不属于)if分支。活动五:观察思考(目标掌握if的执行流程)1、观察下列程序的执行,口述程序的执行过程,画出程序的流程图:小结知识点:1、if语句的执行流程: (1) (2) (3) 2、(1)程序中有_条分支,当表达式 值为真(即满足条件)执行_,否则_。(2)表达式可以为_表达式,一般为_和_表达式,表达式要用_括起来。(3)“语句”:可以是_条简单语句,也可以是多条语句,多条语句称为_语句,要用_括起来。例1:#include #include main()float x,y;clrscr(); scanf(%f,&x); if (x=0) y=sqrt(x); printf(%.2f,y); 流程图:4、说明:例:表达式 -3+d为_表达式,值为_,作条件判断结果为_ 表达式 a=0 为_表达式,值为_,作条件判断结果为_ 表达式 a=5 为_表达式,值为_,作条件判断结果为_ 表达式a4为_表达式,若a=5 则结果为_ 表达式(a0)&(a%2=0)为_表达式,若结果为5 则结果为_活动六、尝试学习(目标if语句的初步应用)编程:输入一个学生成绩score,如果成绩大于60,则显示pass,否则不显示程序: 流程图:活动七、合作探究、拓展应用(目标if语句的应用)1、阅读下列程序,写出运行结果,画出程序的流程图:流程图main()int a,b; scanf(%d%d,&a,&b); if (a=0语句组1语句组2知识点:1.双分支结构:根据对 进行判断,选择执行其中 条分支。条件:一般为 和 表达式。 图2观察上述流程图,思考以下问题:(1)x=0是 ;(2)上图中,有 _ 个分支。(3)若x=0的值为真,则计算机会执行 分支,否则执行_分支。知识点:1.if双分支结构语句:2、条件表达式需用 括起来;分支中各语句应以 结尾;当分支中有若干条语句,则需用 括起来形成复合语句,且大括号后 _(加/不加)分号。活动三、自主学习(目标if双分支结构)观察下列语句,说出下列语句段的含义并思考:(1) if (ab) printf(%d,a);(2) if (ab)printf(%d,a);elseprintf(%d,b);(3) if (ab) c=a; else c=b;c=a+b;(4) if (ab) c=a; else c=b;c=a+b;单分支语句有 ,双分支语句有 ;语句中ab是 ,书写时用 括起来。if语句可写在 行,也可写在 行,注意观察每行的结尾,分支中各语句后均有 ,但 后没有。在各程序段中用横线画出分支语句段,语句段中的c=a+b; _ (属于/不属于)if分支。活动四、学习交流(目标if双分支语句的执行过程)1、观察下列程序的执行,口述程序的执行过程,画出程序的流程图:小结知识点:1、if语句的执行流程: (1) (2) (3) 2、(1)if-else语句有_个分支,但只有其中_条分支被执行。 (2)表达式必须用_括起来 (3)分支1中可以是1条语句,也可以是多条语句,若为多条语句称_语句,必须用_括起来。 (4)在书写if-else语句时,建议使用 _方法。(见课本P32)例1:#include #include main()float x,y;clrscr(); scanf(%f,&x); if (x=0) y=sqrt(x);else y=x*x; printf(%.2f,y); 流程图:活动五、尝试学习(目标if双分支结构语句的初步应用)编程:输入一个学生成绩score,如果成绩大于60,则显示pass,否则显示not pass。程序: 流程图:活动七、合作探究、拓展应用(目标if语句的应用)1、阅读程序,写出运行结果,并画出流程图流程图main()int a,b,c; scanf(%d%d,&a,&b); if (ab) c=a; else c=b; printf(%d,c);若输入4 5,则输出: 若输入5 4,则输出: 程序的功能是: 2、编程:从键盘输入一个字符,判断是否是字母,若是字母则输出该字母为“char”,若不是字母,则输出该字符不是“char”。(输出格式要求:若输入A,则输出结果为:“Ais a char.”,若输入1或它非字母字符则输出“1is not a char”)画框图。活动八、大显身手,能力提升。编程并画出N-S框图。2、从键盘输入两个数a,b,编程将其中较大的数存入max并输出。课堂小结:if语句及其使用(学生小结)课后作业:1、课本P41四(1)、五(3) 2、从键盘输入一整数,判断该数是偶数则显示“even number”,否则显示“odd number”3、从键盘输入两个数a,b,编程输出较大值。课堂检测1(if语句)组别:_ 姓名:_1、改错:下列程序有三处错误,请改正。改正:main()int a; scanf(%d,a); if a=0 a=a else a=-a; printf(%d,a);思考:上述程序完成什么功能?其中划线处的语句能否简化,如何简化?2、阅读程序,写出运行结果main()int x=6,y;if (x10) x+;y=4*x;else x-;y=x/3; printf(y=%d,y);输出结果:y=23、完善程序:使该程序实现下列函数的计算,要求从键盘输入x,输出y的值。y= 2x-1 (x=10)main()float x,y;_if y=2*x-1;else printf(%.2f,y);4、编程:从键盘输入三角形三条边的长,验证边长的合法性并求三角形的周长和面积。 三角形面积求法:s= 面积area=3.2.3 多分支if语句学习目标:1、掌握多分支if语句语法结构、执行过程和基本用法,正确书写多分支if语句;2、能正确阅读多分支if语句程序,会使用多分支if语句编写、调试和运行程序。课前准备:预习P32-33(预习后,将学案上知识点在课本上做记号,并完成相应预习题)课时分配:2课时活动课堂活动一、预习交流,学习新知:多分支if语句(课前预习,自主完成。课上小组展示、评讲,教师点评)1、多分支if语句结构 2、流程图 If(表达式1) 语句组1 else if(表达式2) 语句组2 else if(表达式3) 语句组3 else 语句组n 3、执行过程:(口述)4、说明:(1)每个条件都必须用_括起来;(2)语句组可以是一条语句,也可以是_条语句,称_语句,必须用_括起来。 (3)在单分支if语句中,要求计算机根据条件是否成立执行_分支;双分支if-else语句中要求计算机根据条件是否成立选择两个分支中的_个分支执行;而多分支结构,计算机仍根据条件是否成立选择其中_个分支执行。 (4)书写时if与else要对齐并配对使用。活动二、例题分析。课本P33页例3-3(由学生分析该题算法,说出用什么结构实现算法并编程、画框图)活动三、小试牛刀:多分支if语句的使用【合作探究1】判断下列语句的正确性,并用红笔改正。(1) if (a0) y=1; (2) if (a0) y=1; (3) if (a0) y=1; else (a=0) y=0; elseif a=0 y=0; else if (a=0) y=0;x+; else y=-1; else y=-1; else y=-1;【合作探究2】:分析下列程序的执行过程,并据此推出多分支if语句的执行流程流程图和框图:main()int x,y; scanf(%d,&x);if (x0) y=1;else if (x=0) y=0;else y=-1;printf(y=%d,y);执行:若输入8,则输出 若输入0,则输出 若输入-9,则输出 该程序的功能:_【合作探究3】编程1、移动公司制定话费充值优惠政策,若一次性充值超过(含)1000元,送200元;若一次性充值超过(含)500元,送100元;若一次性充值超过(含)200元,送50元,请输入所充金额x,输入用户最终获取的话费。算法: 流程图:程序:活动四、大显身手,能力提升。编程并画出N-S框图。1、出租汽车收费办法是:行驶里程在3千米以内(含3千米)按7元收费,超过3千米,在5千米(含5千米)以内,每千米按1.8元加收,超过5千米,每千米按2.4元加收。编写出租汽车收费程序。编程: 流程图:2、从键盘上输入一个字符,判别其分类:控制字符、数字字符、大写字母、小写字母或其它字符。(提示:控制字符ASCII码值32)编程: 流程图: 课堂小结:多分支if语句及其使用(学生小结)课后作业: P41四(2)(做在书上)下面各题上作业本1、阅读程序:main()int k=10,y;if (k5) y=1;else if (x10) y=2;else y=3;printf(y=%d,y);输出结果: 0 (x-1)2、下列程序用来求y= 1-x (-1x0) y=1; (2)if (a0) y=1;else if (a=0) y=0; elseelse y=-1; if (a=0) y=0; else y=-1; (3) if (a0) y=1; (4) if (a0) (5) if (a0) if (a5) y=2; if (a5) y=2; if (a5) y=2; else y=-1; else y=-1 else y=-1; 属于多分支if语句的有 属于嵌套if语句的有 比较语句与语句,比较语句与语句,比较语句与语句,分析if-else配对问题,得出其执行流程,画出流程图:小结知识点:嵌套if语句的一般形式:配对原则: 若需强行改变配对规则,则可用 小结知识点:书写注意点: 多分支if与嵌套if的关系:(1) 时两者相同;(2)分支有 个,但最多执行 条;(3)当分支超过 条时,尽量用多分支if语句。活动三:拓展应用(目标掌握嵌套if语句的实际运用)1、 从键盘输入三个整数,求其最大值算法: 流程图程序:2、编程求一元二次方程ax2+bx+c=0的根,要求对a及的值进行判断。算法: 流程图:程序:2、 将P33例3-3用if语句的嵌套语句实现编程课后作业: 1、课本P40三(1)(做在书上)2、P41五(1)上本子3、出租汽车收费办法是:行驶里程在3千米以内(含3千米)按7元收费,超过3千米,在5千米(含5千米)以内,每千米按1.8元加收,超过5千米,每千米按2.4元加收。编写出租汽车收费程序。main()float x,y; if if y=7+1.8*(x-3); else else y=7; printf(y=%f,y);课堂检测2(if语句)组别:_姓名:_1、阅读程序:main()int k=5,y;if (k10) if (x5) y=2; else y=1; else y=3;printf(y=%d,y);输出结果: 0 (x-1)2、下列程序用来求y= 1-x (-1x0) 的值,请完善程序。 2x+5 (x0)main()float x,y; if if y=2*x+5; else else y=0;printf(y=%f,y); (2x5)3、编程求下列分段函数,y= 4(x+5) (5x8) 绝对值函数为fabs()|5-3x| (8x11)第六节 多分支switch-case语句学习目标:1、掌握swith-case语句语法结构、执行过程和基本用法,正确书写switch语句;2、能正确阅读switch语句程序,会使用switch语句编写、调试和运行程序。课前准备:预习P36-38(预习后,将学案上知识点在课本上做记号,并完成相应预习题)课时分配:2课时活动课堂活动一、预习交流,学习新知:多分支swith-case语句的一般形式(课前预习,自主完成。课上小组展示、评讲,教师点评)1、多分支switch语句的一般形式 2、流程图语句组1语句组2语句组n表达式常量表达式2常量表达式1常量表达式n 3、执行过程(口述)4、说明:(1)switch后面的表达式一般是_和_。(2)case后面为_表达式,不允许出现_。其后语句组可不用 。(3)break为可选项,若选择则程序执行完该分支后将会跳出switch语句,执行_语句的后继语句,否则将执行下一个_,直到出现_和_为止。活动二、例题分析。课本P37页例3-6、3-7(由学生分析该题算法,说出用什么结构实现算法并编程、画框图)活动三、合作究疑(目标掌握swith-case语句的执行过程)1、main() 若输入A,则输出:char grade; 85-100 scanf(“%c”,&grade); 70-84switch(grade) 60-69 case A:printf(“85-100n”); 60 case B:printf(“70-84n”); error case C:printf(“60-69n”); 若输入D,则输出: case D:printf(“60n”); 60 default: printf(“error”); error2、main()char grade; 若输入A,则输出: scanf(“%c”,&grade); 85-100switch(grade) case A:printf(“85-100n”);break; case B:printf(“70-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论