内容正文:
3.2 条件语句(if语句)
一、教学目标
1.理解条件语句的概念、格式和功能。
2.通过对if嵌套语句的学习,理解选择结构程序的基本思路。
3. 能够运用if语句编写简单的选择结构程序。
二、重点难点
1.重点:掌握if 语句的两种基本形式。
2.难点:数量运用if语句编写简单的选择结构程序解决实际应用问题。
三、教学时间
本任务教学,课内计划1课时。
4、 教学过程
教学过程
教学环节
教师活动
学生活动
设计意图
导入新课
某商场为了促销,采取购物打折的优惠办法,每位顾客一次购物在1000元及以上者,按九五折优惠,用计算机解决这个问题,该如何设计程序语言呢?
(1)在上面的问题中,设计程序语言可以运用 ______语句解决。
(2)条件语句与程序框图中的____________相对应。
进入情景调动积极性,获取信息,分析问题。
思考、聆听
充分调动学生的积极性,引入话题,为下一步学习做铺垫
学生带着学习任务学习,学生掌握知识点,培养学细致观察的能力、认真的学习态度
讲授新课
一、if 语句
if语句通常被称为选择语句或分支语句。它不再局限于顺序结构的单一流程,而是用来对给定条件进行判定,根据其判定结果,从两种操作中选择其一。if语句用于实现分支结构,C语言提供了两种形式的if语句。
if语句可以根据给定的条件进行判断,决定执行某个分支程序段,以实现选择结构的程序设计。
1. if语句的一般形式
if(表达式) 语句1
说明:
执行if语句时,先对“表达式”进行求值,如果计算结果为非0(为真),则执行其后的“语句”,否则跳过其后的“语句”。
“表达式”可以为任何类型的表达式。看下面的例子。
算术表达式-3+’D’ 值65 结果为“真”
赋值表达式a=0 值0 结果为“假”
赋值表达式a=5 值5 结果为“真”
③“语句”可以是一条简单语句,也可以是用花括号将几条语句括起来的一个符合语句。看下面的例子。
if(x<y)
x=x+1; //简单语句
if(x<y)
{ x=x+1;
y=y+1;
} //复合语句
注意:
用“{}”括起来的复合语句被看成是一条语句。
在编写程序时,经常会出现这样的错误,将“if(a==b)”写出”if(a=b)“,由于表达式”(a==b)”与“(a=b)”均是正确的表达式,因此程序编译时不会指出错误。这样的错误在程序调试中很难被发现,所以应该特别注意。
例3-1 输入一个成绩score,如果成绩大于等于60,则显示“通过!”否则不显示。
程序如下:
#include <stdio.h>
main()
{ int score;
printf(“输入一个成绩:”);
scanf(“%d”,&score);
if(score﹥=60) printf(“通过!
”);
}
运行时,若输入65,则输出“通过!”;若输入56,则无输出,如图:
它的功能是:输入一个成绩后,对表达式“score﹥=”进行计算,如果结果值为真(非0),就执行printf()语句;否则,就跳过printf()语句,转而执行后续语句。
二、if……else 语句
if …else语句的形式为:
if(表达式)
语句1;
else
语句2;
执行过程如图所示:
如果“表达式”计算结果值为真,则执行语句1;否则执行语句2。其中,“语句1”和“语句2”部分可以是简单语句或复合语句。关于书写风格,建议使用缩写格式,以便清楚地看出哪些语句的执行依赖于“表达式”的真假。
注意:在if后面的“语句1”部分和else后面的“语句2”部分如果有几条语句,则应该用花括号“{}”将这几条语句括起来,成为一条复合语句。如:
if(x﹥y)
printf(“较大者为:%d”,x); //if后面的“语句1”部分有两条语句
x=x+1;
else
printf(“较大者为:%d”,y);
应改为:
if(x﹥y)
{ printf(“较大者为:%d”,x); //使用花括号,成为复合语句