资源简介 章节或项目名称 第五章 选择结构程序设计5.1-5.2本次授课类型 理论 □实验 □理实一体 □实训 □实习班级 地点 周次 星期 节次 授课进度十八 2 5、6 符合 □超前 □滞后教学目标 1、掌握关系运算符和关系表达式设计方法 2、掌握逻辑运算符和逻辑表达式设计方法 3、掌握单分支if语句格式及应用教学重点 1、关系运算符和关系表达式设计方法 2、逻辑运算符和逻辑表达式设计方法 3、单分支if语句格式及应用教学难点 1、关系运算符和逻辑运算符混合组建表达式 2、单分支if语句格式及应用教学设计教学环节 内容要点 教学方法 与手段 时间 分配新课引入 大于号、小于号、等于号 案例法 5分钟新课介绍 关系表达式设计 知识讲授 引导启发 20分钟逻辑表达式设计 知识讲授 引导启发 20分钟单分支if语句 知识讲授 引导启发 40分钟总结归纳 重点掌握关系表达式设计、逻辑表达式设计、单分支if语句格式及应用,难点为关系运算符和逻辑运算符混合组建表达式、单分支if语句格式及应用。 归纳法 5分钟教学效果及改进思路一、新课引入>、<、≥、≤、=、≠二、关系表达式设计1.关系运算符C语言中提供了6种关系运算符:2.关系表达式用关系运算符将两个表达式(可以是算术表达式、关系表达式、逻辑表达式、赋值表达式等)连接起来的式子,称为关系表达式。关系表达式的值有两个分别为1和0,当关系表达式成立时,其值为1,当关系表达式不成立时,其值为0。【例5.1】已知a=1,b=2,c=3,则关系表达式a>b的结果为假,值为0;关系表达式a+b==c的结果为真,值为1。【例5.2】判断整型变量n为偶数,怎么书写关系表达式?能被2整除的数据称为偶数,那么可以写成n%2==0。【例5.3】判断成绩变量score为及格,怎么书写关系表达式?成绩大于等于60分称为考试及格,那么可以写成score>=60。注:算术-〉关系-〉逻辑-〉赋值三、逻辑表达式设计1.逻辑运算符逻辑运算符:&&(逻辑与),||(逻辑或),!(逻辑非),其中“&&”和“||”是双目运算符,它要求有两个运算量,且结合方向为左结合,如:a>b&&a!的优先级高于算术运算符,“&&”和“||”的优先级都低于算术运算符和关系运算符,高于赋值运算符,同时“&&”优先级又高于“||”,如下图所示。按照运算符的优先顺序可以得出: a>b && c>d 等价于 (a>b)&&(c>d) !b==c||d a+b>c&&x+yc)&&((x+y)当两个表达式a和b的值为不同组合时,各逻辑运算会得到相对应的值,具体结果见表5.1为逻辑运算的“真值表”。表5.1逻辑运算真值表A B A&&B A||B !A0 0 0 0 10 非0 0 1 1非0 0 0 1 0非0 非0 1 1 02.逻辑表达式用逻辑运算符将两个表达式连接起来的式子称为逻辑表达式。C语言编译系统在给出逻辑运算结果时,以数字1表示“真”,以数字0表示“假”,但在判断一个量是否为“真”时,以0表示“假”,以非0表示“真”。 逻辑表达式分为逻辑与表达式、逻辑或表达式和逻辑非表达式。(1)逻辑与表达式设A,B是两个表达式,如果一个表达式通过运算符的优先级别和结合方向最终可归结为A&&B的形式,则称这个表达式为逻辑与表达式,简称与表达式。(2)逻辑或表达式设A,B是两个表达式,如果一个表达式通过运算符的优先级别和结合方向最终可归结为A||B的形式,则称这个表达式为逻辑或表达式,简称或表达式。(3)逻辑非表达式设A是一个表达式,如果某个表达式通过运算符的优先级别和结合方向最终可归结为!A的形式,则称这个表达式为逻辑非表达式,简称非表达式。【例5.4】设a=10,b=11,c=12,求下列表达式的值:①a%2==0&&c%2==0②a+ba③a&&b||c④b+c||b-c||a⑤!(a>b)&&!c||a>c【例5.5】已知三条边分别为a、b和c,满足构成一个三角形,怎么书写关系表达式?三角形任意两条边之和大于第三条边,那么可以写成a+b>c&&a+c>b&&b+c>a。四、单分支if语句1.if语句的格式if(表达式) 语句2.执行描述其中表达式可以是任意表达式,语句可以是一条语句,也可以是复合语句。执行过程:先判断表达式是否为真,如果为真,那么执行语句,如果为假,那么跳过语句执行后面的程序。3.if语句流程图如图5.1所示。图5.1 if语句流程图【例5.6】编程实现,输入C语言课程的成绩,如果大于等于60分,则输出“成绩及格”。算法设计:定义一个成绩变量;输入成绩;如果成绩大于等于60分,则输出“成绩及格”;代码清单5.1:#include "stdio.h" main() { int score; scanf("%d",&score); if(score>=60) printf("C语言成绩及格!\n"); }运行结果:输入90,输出“C语言成绩及格!”。【例5.7】编程实现,输入两个整数,将这两个数按照从小到大的顺序输出。算法设计:定义三个变量,其中一个用于交换;输入两个整数;如果第一个数大于第二个数,则交换;输出两个整数;代码清单5.2:#include "stdio.h" main() { int a,b,t; scanf("%d%d",&a,&b); if(a>b) { t=a;a=b;b=t; } printf("%d %d\n",a,b); }运行结果:输入32↙,输出2 3。五、总结归纳所学知识为:关系表达式设计、逻辑表达式设计、单分支if语句格式及应用。其中重点知识为关系表达式设计、逻辑表达式设计、单分支if语句格式及应用。难点知识为关系运算符和逻辑运算符混合组建表达式、单分支if语句格式及应用。 展开更多...... 收起↑ 资源预览