C语言程序设计任务驱动式教程(第3版)全书教案单元设计.docx
《C语言程序设计任务驱动式教程(第3版)全书教案单元设计.docx》由会员分享,可在线阅读,更多相关《C语言程序设计任务驱动式教程(第3版)全书教案单元设计.docx(68页珍藏版)》请在咨信网上搜索。
C语言程序设计任务驱动式教程(第3版)全书教案单元设计 第1单元 认识C语言程序 授课内容:认识C语言程序 学时: 2学时(90分钟) 教学目的和要求: 了解C语言的发展和特征以及C语言的学习方法,掌握C语言的程序结构、运行过程及VC++6.0开发环境。 教学重点: 掌握C语言的程序结构、运行过程及VC++6.0开发环境。 教学难点: C语言的程序结构。 教学方法和手段: 本节采用以教师为主导,学生为主体的案例教学,通过制作小名片讲解本节的教学内容,同时在教学过程中同时采用提问法、讨论法和互动式教学方法。 思政元素:通过学习运行环境和简单编程,培养学生的严谨求实态度、工匠精神、创新精神,提高其创新能力以及规则意识 授课内容提纲: 一、课程介绍 1.介绍专业链路图,指出C语言在链路图中的课程地位 2.学习方法和学习要求 二、新课讲解 (一)工作任务一:走进C语言世界——C语言概述 1.C的发展过程 介绍里奇,引起学生兴趣 2.C语言特点 3.C语言的编译运行环境 4.为什么要学习C? 5.怎样学好C语言? 6.遇到问题怎么办?当编程遇到问题,首先应该查看编译器提供的信息;能看懂别人的程序,但自己做就觉得无从下手。 7.英语不行怎么办? (二) 工作任务二:制作一张自己的小名片——C程序框架结构 场景描述:刚刚走进大学校门的同学,为自己制作一张名片,让老师和同学们记住你的名字吧。 l 相关知识 1、C语言程序基本结构 例1.1 用C语言编程在屏幕上显示“Hello C Program!” /* * 输出“Hello C Program!” */ #include <stdio.h> //预处理命令 void main() //主函数 { printf("Hello C Program!\n"); //输出语句 } 1.C语言程序的构成 (1)一个源程序都有且只有一个main() 函数,即主函数,其前面的void代表函数没有返回值。main() 函数下面用 {} 括起来的部分是一个程序模块。C语言的程序总是从主函数开始执行,并且回到主函数结束。 (2)以“#”开始的语句属于预处理命令。源程序中可以有预处理命令,预处理命令通常放在源程序的最前面。 (3)每一个语句都必须以分号结束,但预处理命令、函数头和花括号之后不加分号。 (4)标识符和关键字之间,至少要加一个空格。 (5)源程序中需要解释和说明的部分,可以加以注释,以增加程序的可读性,编译系统会跳过注释行,不对其进行编译。 “/*......*/” 是多行注释,“//”是单行注释。 2.C语言程序的书写规则 (1)在C语言中,虽然一行可以多个语句,一个语句也可占多行,但建议一行只写一个语句。 (2)一般采用缩格式书写格式,以提高程序的可读性和清晰性。 (3)C语言源代码一般用小写字母书写,除非另有约定。 (4)在程序代码中,应加上必要的注释。 3.编译和运行C语言应用程序 (1)C语言应用程序的处理流程 (2)C语言的运行环境的应用 工作任务实施 小名片程序代码如下: /*******我的小名片*******/ #include <stdio.h> void main() { printf("****************************\n"); printf("姓名:小强\t性别:男\n"); printf("学校:河北工业职业技术学院\n"); printf("系别:计算机技术系\n"); printf("****************************\n"); } 四、教学总结与作业布置 【10分钟】 1.C程序的框架? 2.C程序的书写规则? 3.printf用法? 4.C源程序、编译及目标程序的后缀? 板书设计 知识回顾 新课讲解 可擦写区域 课程性质、地位 学习方法及要求 1. C概述 2. C程序框架、构成(重点) #include <stdio.h> //预处理命令 void main() //主函数 { printf("奋斗的青春最美\n"); //输出语句 } 3.书写规则 4.运行环境及运行过程 讲解细节 布置任务 课后附记 课程介绍 【约15分钟】 教师自我介绍、公布自己的联系方式及邮箱,方便同学们有问题联系。 第一次课介绍课程链路、课程地位、学习方法、学习要求 新课讲解1: 【约15分钟】 任务总结分析:教师讲解C语言发展及特点,指出学习方法,介绍书籍资料及网络资源。 新课讲解2【约30分钟】 思路指导: (1)先讲解微小案例,教师现场编程,演示示例 (2)再回顾关键代码,讲解C程序框架 (3)引导学生总结C语言的构成和书写规则 完成工作任务【约20分钟】 (1)引导学生课堂编写制作小名片程序 (2)提示易错处 (3)引导学生会看错误提示,及掌握简单的排错方法。 (4)printf的应用 “\t”,“\n”的使用 (5)引导学生分析错误提示,从而学会根据错误提示修正代码 总结:采用教师引导学生回答的方式进行【约10分钟】 第2单元 C语言程序设计基础 授课内容: 学时: 2学时(90分钟) 教学目的和要求: 掌握标识符及命名规则 掌握常量和变量 掌握基本数据类型及其表示形式 理解运算符的运算规则及优先级关系 学会基本数据类型间的转换规则 教学重点: 标识符 常量、变量 基本数据类型及其表示形式 运算符 教学难点: 常量和变量 基本数据类型间的转换 教学方法和手段: 本节采用以教师为主导,学生为主体的案例教学,首先通过计算圆面积实例引出本节的教学内容,同时在教学过程中同时采用提问法、讨论法、现场编程法和互动式教学方法。 思政元素:通过学习培养学生的规则意识和严谨求实的学习态度 授课内容提纲: 一、复习旧课导出新课 上一个单元,我们制作了小名片,学习了C程序的基本架构(提问:基本架构?) 引出:如何用程序语言描述一个人的年龄、性别、身高、体重?在程序中,数据又是如何存储的?在本单元,将通过几个小任务介绍C语言中的标识符、常量、变量、简单数据类型、基本运算符号、表达式和数据类型转换等。 二、 新课讲解 (一) 工作任务一:计算圆的面积——整型与实型数据,常量与变量 l 相关知识 1、标识符 (1)系统标识符 (2)用户标识符 【思考】以下标识符是合法吗? 3s,s*T,-3x,bowy-1 在使用标识符时还必须注意以下几点: (1)在标识符中,大小写是有区别的。例如BOOK和book 是两个不同的标识符。 (2)标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号。因此,命名应尽量有相应的意义,以便阅读理解,作到“见名知意”。 (3)标识符不能和关键字相同。关键字是C语言预先定义的、有固定含义的标识符,不能重新定义,也不能用作他用。 2、常量和变量 常量 在程序的运行过程中,其值不能被改变的量就是常量。 常量声明格式一般为: #define <常量名> <常量值> 例2.1: 符号常量的使用 /**符号常量的使用**/ #include <stdio.h> #define PRICE 10 //声明常量 void main() { int total,num; //声明变量 num=5; total=num*PRICE; //应用常量 printf("%d",total); } 程序中用#define 命令定义常量PRICE代表10,在本程序中出现的PRICE都代表10。 变量 (1)定义变量。 在C语言中,变量的使用必须首先定义。变量的定义形式如下: 类型说明符 变量名1 [,变量名2,……]; (2)初始化变量。 变量的初始化是指在定义变量的同时就给它赋一个初值。初始化语句格式如下: 类型说明符 变量名1=初值1 [,变量名2=初值2,……]; (3)给变量赋值。 变量=表达式; 3、C语言的数据类型 (1)基本数据类型——整型数据 (2)基本数据类型——实型数据 工作任务实施: 已知半径,求圆的面积,程序代码如下: /****求圆的面积****/ #define PI 3.14 //声明常量 main() { int r;//圆半径r float s;//圆面积s r=2; s=PI*r*r; printf(“s=%.2f”,s); } 特别提示: (1)允许在一个类型说明符后,说明多个相同类型的变量。各变量名之间用逗号间隔。类型说明符与变量名之间至少用一个空格间隔。 (2)变量说明必须放在变量使用之前。一般放在函数体的开头部分。 (二)工作任务2:编制密码器——字符型数据 编制一个密码器,实现给友军发送加密电报,报文是由小写字母a~n组成,在发报时每输入一个字母,输出与其相邻的下一个字母,如何来编制这个密码器呢? l 相关知识 1. 基本数据类型——字符型数据 (1)字符常量 (2)字符串常量 (3) 字符变量 例2.2:字符型变量的输出 main() { char c1,c2; c1=’a’;c2=’b’; printf(“%c,%c\n”,c1,c2); printf(“%d,%d”,c1,c2); } 工作任务实施 编制密码器程序代码如下: /***编制密码程序***/ #include <stdio.h> void main() { char word,password; printf("请输入a~n的一个字母:"); scanf("%c",&word); //输入字符 password=word+1; printf("加密后的字母为%c\n",password); } 特别提示: (1)字符型数据除转义字符外,其值是由单引号引起来的一个字符。 (2)字符’3’和数字3是不同的。ASCII表规定’3’的值是51。 (三)工作任务3:分离数字问题——运算符与表达式 编写一个程序,从键盘输入一个三位整数,将其逆序输出。例如:输入123,输出321。 相关知识: 1、运算符与表达式 算术表达式:+,-,*,/,% 几点说明: ·若“/” 两边都是整型,结果就是一个整型。 如:3/2的结果就是1. ·“/” 如果有一边是小数,那么结果就是小数。 3/2.0的结果就是1.5 ·“%”符号是余数,%符号两边要求是整数。 ·赋值运算符 = 如:a=3 把赋值号右边的3赋值给赋值号左边的变量a ·复合赋值运算符 +=,-=,*=,/= 算术运算符和赋值运算符复合使用 ·赋值表达式 ·注意: 常量不可以赋值。 赋值的左边只能是一个变量。 复合运算符,例a*=2+3;运行完成后,a的值是12。首先要在2+3的上面打上括号。变成(2+3)再运算。 ·赋值运算优先级最低 自加与自减运算符:++,-- 自加、自减表达式:如:a++ ++a --b b—等 不管前缀++还是后缀++,对于变量的作用都是加一操作,但对于表达式来讲,++在前的表达式用的是变量加一以后的新值,++在后的表达式用的变量原来的值。--运算符同 2、数据类型转换 ·自动转换,char-int-float-double ·强制转换 (类型名) 表达式 一定是 (int)a 不是 int(a),注意类型上一定有括号的。 ·注意:(int)(a+b) 和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b 工作任务实施: 三位整数逆序输出,程序清单如下: /********三位数逆序输出********/ #include <stdio.h> void main() { int n,a1,a2,a3; printf("请输入三位整数:"); scanf("%d",&n); a1=n/100; //求百位 a2=n/10%10; //求十位 a3=n%10; //求各位 printf("%d%d%d\n",a3,a2,a1); //逆序输出 } 特别提示: (1)分离数字是C语言的基础算法之一,请读者认真理解并学会。 (2)“%”符号是余数,%符号两边要求是整数。 四. 教学总结与作业布置 1.常量,变量? 2.数据类型及表示方式? 3.各种运算符? 板书设计 知识回顾 新课讲解 可擦写区域 1. C程序框架、构成 2.书写规则 3.运行过程 1.标识符 2.常量和变量 3.整型、浮点型、字符型数据,变量的声明和赋值 4.运算符、表达式 布置任务 教学回顾:以提问方式,教师引导总结 【约10分钟】 新课讲解1: 【约30分钟】 1. 小案例引入 2. 思路指导: 每个小例题后,小结知识点,指出需注意的地方 据任务一语句讲解知识点,并辅以微小案例,每各知识点小案例后,注意与学生互动,让学生回答,检验学习效果。 本任务知识点较多,注意15分钟左右有个小互动,课堂松弛一下。 任务总结分析:教师带领学生分析数据的输入、结果的输出。再次强调标识符、常量、变量、各种数据类型等知识点。 提示学生注意 新课讲解2【约20分钟】 思路指导: 教师引导学生思考在编制密码的过程中需要输入哪些数据,保存在什么地方,如何处理,如何输出 教师带领学生分析以上程序中数据的输入、存储和结果输出,特别是字符数据类型的处理 教师通过上述讲解提醒学生注意 新课讲解3【约20分钟】 思路指导:教师引导学生思考在逆序的过程如何处理,如何输出 知识讲解 任务总结分析:教师带领学生分析数据的处理、结果的输出。再次强调运算符和表达式的应用。 通过讲解提示学生注意 总结:采用教师引导学生回答的方式进行 【约10分钟】 课后附记 第3单元 顺序结构程序设计 授课内容:顺序结构程序设计 学时:2学时(90分钟) 教学目的和要求: 通过顺序结构程序的学习,使学生了解程序的基本概念、掌握程序的基本结构、了解C语言中语句的种类、掌握输入输出函数的格式功能和使用方法。通过3个典型实例使学生体会顺序结构程序的设计思想,进一步加强学生逻辑思维能力和推理能力的培养,同时帮助学生掌握更多的编程技巧。 教学重点: 掌握printf、scanf两个函数的格式、功能和用法。 教学难点: scanf函数的理解和运用。 教学方法和手段: 本节采用以教师为主导,学生为主体的案例教学,首先通过设计一个菜单实例引出本节的教学内容,同时在教学过程中同时采用提问法、讨论法和互动式教学方法。 思政元素:通过学习培养学生注重文化修养、道德修养的输入,为社会输出人生价值、为国家发展贡献力量 授课内容提纲: 一、复习旧课导出新课 教师总结: 在日常生活中,需要“按部就班、依次执行”处理和操作的问题随处可见,每年一度的迎新打会、年终总结大会等等都这样一种顺序结构。 二、新课讲解 以同学们经常吃饭的川味酒家的菜单为例引出第一个工作任务,引起同学们的学习兴趣。 (一)工作任务一:菜单设计——算法和程序的基本结构 场景设计:小明和小康到饭馆就餐,刚刚落座,服务员拿出一本菜单,让两人点餐,小明和小康看看菜单,心想能否用C语言中的printf函数实现呢? l 相关知识:(教师讲解) 算法的概念 描述算法的工具——流程图的介绍 l 任务实现:(教师讲解) #include <stdio.h> void main() { printf(" 欢迎光临四川酒家\n "); printf(" 油焖大虾 48元/份\n "); printf(" 干煸豆角 20元/份\n "); printf(" 水煮鱼 38元/份\n "); printf(" 麻婆豆腐 15元/份\n "); } l 拓展与提高:(教师讲解) 1. 程序设计语言简介(高级语言、中级语言、低级语言) 2. 程序设计方法简介(建立数学模型、选定算法并用适当的工具描述、编写程序、测试与调试) 3. 结构化程序设计 4. C语言中中的语句,再次特别强调赋值语句 (二)工作任务二:小写字母转换成大写字母----字符输入输出函数 场景设计:晓伟和明宽两个小朋友刚刚学习英文中26个英文字母,为了加强练习,晓伟写出大写字母,明宽写出与之对应的小写字母,请编写一个C语言程序,模拟上述过程。 l 任务实现:(教师讲解) #include <stdio.h> void main() { char a; printf("请输入一个小写字母: "); a=getchar();//通过键盘输入一个小写字母 printf("该字母对应的大写字母是:%c \n", a-32); } l 相关知识: putchar 函数是字符输出函数, 其功能是在显示器上输出单个字符。一般形式为: putchar(字符变量) 例如: putchar('A'); 输出大写字母A putchar(x); 输出字符变量x的值 putchar('\n'); 换行 对控制字符则执行控制功能,不在屏幕上显示。 使用本函数前必须要用文件包含命令:#include<stdio.h> getchar函数的功能是从键盘上输入一个字符。其一般形式为: getchar(); 通常把输入的字符赋予一个字符变量,构成赋值语句。 (三) 工作任务三: 输出学生个人信息----格式化输入输出函数 场景设计: 为了方便学生管理,班主任王老师安排学习委员张雪输出一张学生个人信息表,表的格式如下: 姓名 性别 年龄 数学 英语 C语言 张雪 女 18 89 87.5 67.5 …….. …….. l 思路指导:(教师引导学生思考) 输入:对于数据的输入用输入函数scanf(“格式控制字符串”,地址表列),年龄存储到变量age 中,数学成绩存储到变量math中,英语成绩存储到变量english中,C语言成绩存储到变量c中。 输出: 1.表头的输出用无格式的输出函数printf(“字符串”); 2.对具体内容的输出用带格式的printf(“格式控制字符串”,输出项表列)。 l 相关知识:(教师讲解) 格式化的输入输出指的是按照指定的格式对数据进行输入输出操作,数据的输出用到库函数printf(),数据的输入用到库函数scanf(),使用这两个函数时,程序设计人员需要指定输入输出数据的格式。 (一)格式化的输出函数printf 1.printf函数调用的一般形式 printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在使用printf 函数之前必须包含stdio.h文件。printf函数调用的一般形式为: printf(“格式控制字符串”,输出项表列); 2.函数功能 按照格式控制字符串所指定的格式,将“输出项列表“中各输出项输出到标准输出设备。 3.有关说明 (1)格式控制字符串可以包括:“格式转换说明符”,用于规定相应输出项内容的输出格式,格式字符串是以%开头的字符串,在%后面跟有各种格式字符,以说明输出数据的类型、形式、长度、小数位数等。如“%d”表示按十进制整型输出,“%ld”表示按十进制长整型输出,“%c”表示按字符型输出等(见表3-1);“转义字符”用于输出所代表的控制代码或特殊字符;“普通字符”,要求原样输出的字符,在显示中起提示作用。 (2)“输出表列” 输出表列中给出了各个输出项,可以是变量和表达式,输出项之间用逗号分隔。 要求格式字符串和各输出项在数量和类型上应该一一对应。如例3.3所示。 (二)数据输入函数scanf 1.scanf函数调用的一般形式 scanf函数称为格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。 (1)scanf函数的一般形式 scanf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中,与printf函数相同,C语言也允许在使用scanf函数之前不必包含stdio.h文件。scanf函数的一般形式为: scanf(“格式控制字符串”,地址表列); 其中,格式控制字符串的作用与printf函数相同,但不能显示非格式字符串,也就是不能显示提示字符串。地址表列中给出各变量的地址。 地址是由地址运算符“&”后跟变量名组成的。例如,&a,&b分别表示变量a和变量b的地址。这个地址就是编译系统在内存中给a,b变量分配的地址。在C语言中,使用了地址这个概念,这是与其它语言不同的。 应该把变量的值和变量的地址这两个不同的概念区别开来。变量的地址是C编译系统分配的,用户不必关心具体的地址是多少。变量的地址和变量值的关系如下:如在程序中有如下赋值语句:a=67,则a为变量名, 67是变量的值,&a是变量a的地址。 注意在赋值表达式中给变量赋值,赋值号左边是变量名,不能写地址,而scanf函数在本质上也是给变量赋值,但要求写变量的地址,如&a。这两者在形式上是不同的。&是一个取地址运算符,&a是一个表达式,其功能是求变量的地址。如例3.4所示。 l 任务实现: #include <stdio.h> void main() { int age; int math,english,c; printf("请输入学生基本信息:"); scanf("%d",&age); scanf("%d%d%d",&math,&english,&c); printf("姓名\t性别\t年龄\t数学\t英语\tC语言\n"); printf("张雪\t女\t"); printf("%d\t",age); printf("%d\t%d\t%d\n",math,english,c); } l 特别提示:(教师讲解) 1.格式控制字符串要用双引号扩起来。 2.输入项和输出项的个数、顺序和类型要与格式控制符的个数,顺序和类型要严格一致,否则会出现异常。 (四)教学总结和作业布置 1.教学总结:本单元首先介绍了程序和算法的基本概念,然后重点讲解了C程序输入和输出操作是由函数printf() 、putchar()、scanf() 、getchar()来实现的。 C语言格式输入输出的规定比较麻烦,应用不对就得不到预期的结果,而输入输出又是最基本的操作,几乎每一个程序都包括输入输出。 2. 作业P54-55思考与训练 五、板书设计 知识回顾 新课讲解 可擦写区域 1. 程序和程序的基本特征 2.表达式的书写规则 1.无格式的输出(printf函数) 2.字符的无格式的输入和输出 3.有格式的输入和输出 讲解细节 布置任务 六、课后附记 教学回顾:以提问方式进行,教师引导总结 问题1:什么是程序? 问题2:程序的基本特征是什么? 问题3:表达式的书写规则? 【约10分钟】 新课讲解1: 【约30分钟】 1.生活小案例引入,吸引学生学习兴趣 2.思路指导: 教师引导学生思考对于菜单的设计,应该考虑显示的位置、界面整齐、美观自然、使用方便等、培养学生的审美和服务意识。 任务总结分析:据任务一语句讲解,重点讲解无格式的输出函数的使用方法,注意事项。注意与学生互动,让学生回答,检验学习效果。 教师提问:C中的赋值号与数学上的等号有什么区别?教师引导学生回答。 新课讲解2【约10分钟】 教师带领学生分析:输入的大写字母存储位置。大写字母和小写字母的ASCII码相差32,如:大写字母A的ASCII码为65,而小写字母a的ASCII码是97。因此,大写字母加32变为小写字母。 输出:ch+32即为对应的字符,教师带领学生分析如上程序对字符输出函数、字符输入函数进行讲解 教师用生活小案例引入,吸引学生学习兴趣【约30分钟】 教师带领学生分析左侧程序,分析printf和scanf函数的使用方法并提请同学们注意 教学总结:采用教师引导、学生回答的方式进行. 1. 顺序结构程序的特点是什么? 2. 格式化输入和输出和无格式化的输入和输出的区别是什么? 最后教师总结本单元的重点和难点 【约10分钟】 第4单元 选择结构程序设计(第一讲) 授课内容:单分支和双分支 学时:2学时(90分钟) 教学目的和要求: 通过if语句的学习,理解选择结构程序的基本思想,掌握简单选择结构程序的设计方法;通过实例使学生体会算法的基本思想,加强学生逻辑思维能力和推理能力的培养,同时帮助学生掌握更多的编程技巧。 教学重点: 掌握if分支语句的概念、格式、功能和用法。 教学难点: if语句的理解和运用。 教学方法和手段: 本节采用以教师为主导,学生为主体的案例教学,首先通过预测身高实例引出本节的教学内容,同时在教学过程中同时采用提问法、讨论法和互动式教学方法。 思政元素:感恩父母,感恩朋友,感恩我们这个伟大的时代;培养学生爱国主义情操。 授课内容提纲: 一、复习旧课导出新课 问题1:输入输出函数的格式与功能? 问题2:顺序结构程序的特点是什么? 问题3:在人生的成长道路中你遇到了哪些选择? 教师总结: 从程序的流程角度看,程序可以分为顺序结构,选择结构,循环结构三种基本结构。 在大多数程序中都包含选择结构,它的作用是:根据给定的条件是否满足,从给定的两组或多组操作用选择其一,在C语言中若想表示条件,一般用关系表达式或逻辑表达式,要想实现选择结构用if语句或switch语句,本节课我们要学习if语句的使用 二、新课讲解 从班里挑选一个175cm的男生和165cm左右的女生询问影响他们身高的因素是什么?(引导学生回答) 教师总结:影响身高的因素有:遗传因素、饮食习惯、体育锻炼,从中教育学生从小要养成良好的生活习惯,从而引出第一个工作任务 (一)工作任务一:身高预测——简单if 语句的运用 l 相关知识:(教师讲解) 1.条件的描述: (1)关系运算符和关系表达式 ·关系运算符(>、<、>=、<=、、==、!=),教师引导学生分析书写与数学上的书写的区别,关系运算符==和赋值运算符=之间的区别 关系表达式:用关系运算符连接起来的表达式,例如:a>b 关系表达式的值:1或0;在C语言中非0即为真,0为假 (2)逻辑运算符和逻辑表达式 逻辑运算符(&&、||、!) 逻辑表达式:用逻辑表达式连接起来的表达式,逻辑运算符的左右两边一般情况下是关系表达式,例如:(x%5==0)&&x%(7==0) 逻辑表达式的值:1或0; 2.选择结构以及实现选择结构的方法 (1)选择结构 选择结构是三种结构之一,选择结构也称为分支结构,是对给定的条件进行判断,依据条件成立与否选择执行不同的操作的一种程序设计方法 ·选择结构的表示方法:用流程图表示 (2)实现选择结构的方法 单分支选择语句 语法: if(表达式) {语句体} … 功能:判断括号内表达式的值,若其值不为0,则执行语句体中的语句,否则,跳过语句体,执行语句体的后续语句 流程图: 典型例题 编一个程序,若通过键盘输入的是大写字母,则把它转换成小写字母输出,若输入的是小写字母,则不转换 #include <stdio.h> void main() { char ch; printf(“请输入一个字母:”); scanf(“%c”,&ch); if(ch>=’a’&&ch<=’z’) ch=ch-32; printf(“转换成的大写字母为:%c”,ch); } l 工作任务的实施 #include <stdio.h> void main( ) { char sex; /*孩子性别*/ char sports; /*是否喜欢体育运动*/ char diet; /*是否有良好的饮食习惯*/ float myheight; /*孩子身高*/ float faheight; /*父亲身高*/ float moheight; /*母亲身高*/ printf("你是男孩(b) 还是女孩(g)?"); scanf("%1s", &sex); printf("你输入你爸爸的身高(cm):"); scanf("%f", &faheight); printf("你输入你妈妈的身高(cm):"); scanf("%f", &moheight); printf("你是否喜欢体育锻炼(Y/N)?"); scanf("%1s", &sports); printf("是否有良好的饮食习惯等条件(Y/N)?"); scanf("%1s", &diet); if (sex=='b'|| sex=='B') myheight=(faheight+moheight)*0.54; if (sex=='g'|| sex=='G') myheight=(faheight*0.923+moheight)/2.0; if(sports=='Y'|| sports=='y') myheight=myheight*(1+0.023); if(diet=='Y'||diet=='y') myheight=myheight*(1+0.015); printf("Your future height will be % 6.2f (cm)\n", myheight); } l 特别提示:由上边的分析得出: (1)if后面的(表达式)一定要有圆括号; (2)表达式一般情况下是关系表达式和逻辑表达式,也可以是任意类型的C语言的合法的表达式,但计算结果必须为整型、字符型或浮点型之一。 (3)语句序列如果为单条语句,可以不加大括号,如果是多条语句,一定要加大括号,构成复合语句。 (二)工作任务二:闰年判断---- if—else 语句的运用【约35分钟】 l 相关知识(双分支选择语句): 1.语法: if(表达式) {语句组1} else {语句组2} 2.执行过程及功能:判断括号内表达式的值,若其值不为0,则执行语句组1中的语句,否则,执行语句体组中语句 l 任务实施 #include <stdio.h> void main() { int y,leap; printf("请输入一个年份:"); scanf("%d",&y); if((y%4==0)&&(y%100!=0)||(y%400==0)) //闰年条件,经典 leap=1; else leap=0; if(leap==1) printf("%d年是一个闰年",y); else printf("%d年不是一个闰年",y); } l 特别提示 (1)if和else同属于一个if语句,else不能作为语句单独使用,它只是if语句的一部分,与if配对使用,因此程序中不可以没有if而只有else; (2)只能执行与if有关的语句或者执行与else有关的语句,而不可能同时执行两者; (3)如果<语句1>和<语句2>是非复合语句,那么该语句一定要以分号结束。 3.教学补充:条件表达式实现选择结构 •条件运算符::? : •典型例题 编写一个程序,找出两方数据中的最大数 #include <stdio.h> void main() { int a,b,max; printf(“请输入两个数据:”); scanf(“%d%d”,&a,&b); man=(a>b)?a:b; printf(“两个数据中的最大数为:%d”,max); } 四.教学总结与作业布置 五、板书设计 知识回顾 新课讲解 可擦写区域 1.程序的基本结构 2.语句的分类 3.输入输出函数 1.关系运算符和关系表达式书写规则 2.逻辑运算符和逻辑表达式书写规则 3.选择结构程序的基本概念 4.if选择结构 5.if-else选择结构 讲解细节 布置任务 六、课后附记 教学回顾:以提问方式进行,教师引导总结 【约10分钟】 新课讲解1: 【约35分钟】 1.生活小案例引入,吸引学生学习兴趣 2.思路指导: 教师引导学生思考在预测身高的过程中需要输入哪些数据,保存在什么地方,判断条件是什么,需要怎样的处理,最后需要输出什么结果。 教师引导学生总结回答并问题: 1. 条件的描述方法 2. 选择结构的实现方法。 此处补充一个小写字母转换成大写字母的小例题 任务总结分析:教师带领学生分析数据的输入、条件判断、if语句的格式和使用、结果的输出。特别要分析程序中红题字部分,再次强调if语句的格式和使用。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 任务 驱动 教程 全书 教案 单元 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文