资源描述
单元4-1 选择结构程序设计(一)(教案)
教学内容及教学过程
说明
步骤一 问题引入
如图所示:
根据三角形的三边,计算三角形的面积,其计算公式为:
area= (其中a、b、c为三角形的三个边长,s=(a+b+c)/2)
输入的三个边长一定能构成合法的三角形吗?回答当然是否定的。三个边长a、b、c能构成合法三角形的判断条件是?
步骤二 讲授
4.1 条件判断表达式
4.1.1 关系运算符及表达式
序号
名称
符号表示
1
小于
<
2
小于等于
<=
3
大于
>
4
大于等于
>=
5
等于
==
6
不等于
!=
【例4-1】
1.a>b==c 等价于 (a>b)==c,“>”优先级高于“==”。
2.a=b<c 等价于 a=(b<c),“<”优先级高于“=”,即关系运算符的优先级高于赋值运算符。
3.a<=b+c 等价于 a<=(b+c),“+”优先级高于“<=”,即关系运算符的优先级低于算术运算符。
【随堂练习4-1】
1.当a=3,b=2,c=1时,判断例4-1中条件表达式的值?
2.当r的值为3时,判断下列条件表达式的值。
(1)r==3 (2) r=4 (3)0<r<1
3.整型变量n为偶数的关系表达式为 。
4.1.2 逻辑运算符及表达式
序号
名称
符号表示
1
逻辑非
!
2
逻辑与
&&
3
逻辑或
||
【例4-2】
操作数A
操作数B
!A
A&&B
A||B
非0
非0
0
1
1
非0
0
0
0
1
0
非0
1
0
1
0
0
1
0
0
1.当x=3,y=4,z=5时,计算下列各逻辑表达式的值。
(1)x>y&&y>z
(2)!(x==3)||y<z
【随堂练习4-2】
1.判断字符变量ch的值为大写字母的逻辑表达式为:
2.判断某一年份是否为闰年。
4.2 if选择语句
4.1问题的引出
转换成小写字母
真
是否大写
假
开始
结束
输入一个字母
输出小写字母
4.2.1单分支if语句
单分支if语句的一般格式:
if ( 表达式 )
{ 语句组;}
执行过程流程图
语句组
真(非0)
表达式
假(0)
重点提示:“语句组”可以是一条独立的语句,此时“{}”可以省略;也可以是包含多条语句的复合语句,此时“{}”不能省略。
【例4-4】编写程序,输入两个整数,然后将这两个整数按照从大到小的顺序存放并输出。
交换过程由{t=a; a=b; b=t;}所构成的复合语句来完成。
【随堂练习4-3】
1.以下程序段的运行结果是 。
int x=10,y=20;
if(x<y)
x=y; y=x;
printf(“x=%d,y=%d”,x,y);
2.以下程序段的功能是计算一个整数的绝对值,将程序补充完整。
int n;
scanf(“%d”,&n);
printf(“该整数的绝对值是%d.”,n);
4.2.2 双分支if-else语句
【例4-5】输入一个正整数,判断该数是偶数,还是奇数。
开始
输入正整数x值勤
结束
输出x是偶数
输出x是奇数
x%2==0
真
假
由此推导出双分支if-else语句的一般格式:
if ( 表达式 )
{ 语句组1;}
else
{ 语句组2;}
步骤三 课堂小结
1.关系型表达式与逻辑性表达式
注意:表达式优先级与特殊符号的区别
2.单分支if语句
3.双分支if-else语句
注意:复合语句的构成
步骤四 实验与作业
1. 实验内容
实现实例4-4、4-5
实训指导(一)2、3
2.课后作业
(1) 单元总结提升
第1题,第2题(1)(2)
(2)单元练习
第一题 1、2、3、4
第二题 1、2、3
通过问题引入分析过程,提出C语言处理这选择执行程序的思路
难点
区分“=”与“==”。
重点之一
重点之二
实例分析,字母转换过程
通过示例分析出用字母转换的流程,引出分支结构
重点分析
提示注意
注意分析实现算法
注意实验总结与积累
掌握交换的方法
在总结中提升
在练习中强化
重点之三
教
学
总
结
展开阅读全文