选择结构程序设计(if~else语句)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
输入a,b,c 计算△
真
a>0&&△>=0
假
计算x1,x2
输出x1,x2
上机演示程序6-1执 行流程
课堂练习
给出三角形的三边长,求三角形面积
if(a+b>c&&a+c>b && b+c>a) { s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(“%f”,area); }
《C语言程序设计》 if~else语句
下班买10个包子,如果看到卖西瓜的, 就买一个。
if(遇到卖西瓜) 买一个包子;
else 买十个包子;
学习目标
Ø 用if~else语句实现选择 Ø 理解if~else语句的执行流程 Ø 熟练使用关系运算与逻辑运算构造条件表达式
例:求二元一次方程的实根。
ax2 bx c 0
输入a,b,c
a+b>c&&
假
b+c>a&&
a+c>b
真
计算s
计算area
输出area
if-else语句(条件选择语句)
if~else语句的一般格式
if (expression) statement1
else statement2
真 statement1
expression
假 statement2
if-else语句应用举例
判断一个给定的数为奇数还是偶数
scanf(“%d”,&n); if(n%2==0)
printf(“%d是偶数”,n); else
printf(“%d是奇数”,n);
假 输出n是奇数
输入n n%2==0
真 输出n是偶数
上机演示程序6-2执 行流程
课堂练习
求学生的成绩总评
scanf(“%f”,&s); if(s>=60)
if(3+5) 语句;
if(!a) 语句;
if(a==0) 语句;
关于if~else语句的几点说明
2.无论是否有else子句,if子句中如果只有一条语句,则此语句后的 分号不能省略。
else不是一条独立的语句,它只是if语句的一部分,在程序中else必须 和if配对,共同组成一条if~else语句。
简单语句,复合语句,if语句 等
假
expression
真
statement
if语句应用举例
d求isc二=b*元b-4一*a次*c;方程的实根。
if(a>0&&disc>=0) { p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(“%d,%d”,x1,x2); }
printf(“pass”); else
printf(“fail”);
真 输出pass
输入成绩s s>=60
假 输出fail
关于if~else语句的几点说明
1.if后面圆括号中的表达式,可以是任意合法的C语言表达式,也 可以是任意类型的数据。
if(a>b)
if(a>b&& b>c)
语句;
语句;
if(a=0) 语句;
ቤተ መጻሕፍቲ ባይዱ
输入a,b,c 计算△
条件: a>0, △>=0
真
a>0&&△>=0
假
计算x1,x2
输出x1,x2
例:判断一个给定的数为奇数还是偶数
条件: 除以2余数是否为0
假
输出n是奇数
输入n n%2==0
真
输出n是偶数
例:求分段函数y的值
-x
x∈[-5,0)
条件
y
0
x=0
条件
x
x∈(0,5]
条件
真 y=-x
输入x
x>=-5&&x<0
真 y=x
假
假
x>0&&x<=5
真
假
x==0
y=0
输出y
C语言有两种选择语句:
(1)if语句,实现两个分支的选择结构 (2)switch语句,实现多分支的选择结构
if语句(条件选择语句)
if语句的一般格式
关系表达式,逻辑表达式,数 值等
if (expression) statement1;
关于if~else语句的几点说明
3.if~else语句的执行流程 首先计算紧跟在if后面一对圆括号内表达式的值。
如果表达式值非零,则执行if子句,然后跳过else子句,去执行if语句后 的下一条语句;
如果表达式的值为零,则跳过if子句,去执行else子句,接着去执行if语 句后的下一条语句。