第2章 选择结构——2. if-else-ifPPT教学课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
句。
例如,if(3) printf(“ok”);
if(‘a’) printf(“%d”,’a’);
都是合法的
2020/12/11
6
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
说明:
(2)第二,第三种形式的if语句中,在每个 else前面有一个分号,整个语句结束处有一 个分号。
例如,if(x>0) printf(“%f”,x); else printf(“%f”,-x);
对的if语句配对。
例:
例:
If()
If()
if() 语句1
{if() 语句1}
else
else
if() 语句2
if() 语句2
else 语句3
else 语句3
当if和else数目不同时,可以加花括号来确定配对关系。
2020/12/11
13
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
ì-1 (x<0)
B=t
b=t;}
printf(“%5.2f,%5.2f\n”,a,b);}
2020/12/11
9
北京邮电大学世纪学院
§2.3 if语句(续)
C语言程序设计
例2.2 输入三个数a,b,c,要求按由小到大的顺序输出。
If a>b 将a和b对换 (a是a,b中小者) If a>c 将a和c对换 (a是a,c中小者,因此a是三
8
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
例2.1 输入两个实数,按代数值由小到大的顺序输出这两
个数。
#include<stdio.h>
void main()
a>b
{float a,b,t; scanf(“%f,%f”,&a,&b); if(a>b)
y
T=a
n
Βιβλιοθήκη Baidu
{t=a;
A=b
a=b;
2020/12/11
5
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
说明:
(1) 3种形式的if语句中在if后面都有表达式, 一般为逻辑表达式或关系表达式。
例如,if(a==b&&x==y) printf(“a=b,x=y”);
在执行if语句时先对表达式求解,若表达式指为
0,按假处理,若值非0,按真处理,执行指定语
ì-1 (x<0) y= í 0 (x=0)
î 1 (x>0)
上例中的程序段有四个,请判断哪个是正确的?
者中最小者) If b>c 将b和c对换 (b是b,c中小者,也是三者中
次小者)
2020/12/11
10
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
#include <stdio.h>
void main ( )
{ float a,b,c,t;
scanf(“%f,%f,%f”,&a,&b,&c);
在if语句中又包含一个或多个if语句称为if语句的嵌套。
形式:
if()
if() 语句1
else 语句2 else
内嵌if
if() 语句3
else 语句4
2020/12/11
12
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
匹配规则:
else总是与它上面的,最近的,同一复合语句中的,未配
C语言程序设计
(2)if(表达式) 语句1 else 语句2
例:if(x>y) printf(“%d”,x);
else printf(“%d”,y);
非0 条件 0
语句1
语句2
2020/12/11
3
北京邮电大学世纪学院
§2.3 if语句(续)
(3)if(表达式1)语句1 else if(表达式2)语句2 else if(表达式3)语句3 …… else if(表达式m)语句m else 语句n
C语言程序设计
2020/12/11
4
北京邮电大学世纪学院
§2.3 if语句(续)
C语言程序设计
例:
if (number>500)cost=0.15; else if(number>300)cost=0.10; else if(number>100)cost=0.075; else if(number>50)cost=0.05; else cost=0;
北京邮电大学世纪学院
C语言程序设计
第二章
2020/12/11
1
北京邮电大学世纪学院
§2.3 if语句
C语言程序设计
一.If语句的三种基本形式
表达式
(1)if (表达式) 语句 真(非0)
语句
if(x>y) printf(“%d”,x);
假 (0)
2020/12/11
2
北京邮电大学世纪学院
§2.3 if语句(续)
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
if(b>c)
{t=b;b=c;c=t;}
printf("%5.2f,%5.2f,%5.2f\n",a,b,c);
}
2020/12/11
11
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
二.If语句的嵌套
例 2.3 有一个函数 y= 0í (x=0),编一程序,输入一个x
值,输出y值。
î1 (x>0)
算法1:
算法1:
输入x
输入x
若x<0,则y=-1
若x<0,则y=-1
若x=0,则y=0
否则:
若x>0,则y=1
若x=0,则y=0
输出y
若x>0,则y=1
输出y
2020/12/11
14
北京邮电大学世纪学院
{s=0.5*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf(“area=%6.2f”,area);
}
else printf(“it is not a trilateral”);
注意第五行花括号}外面不需再加分号;。因为{ }内是
2一020/1个2/11 完整的复合语句,不需要附加分号。
但注意,上面不是两个语句,而是一个if语句, Else子句不能作为语句单独使用。
2020/12/11
7
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)
说明:
(3)在if和else后面可以只含有一个内嵌的操
作语句,也可以有多个操作语句,此时用花
括号{ }将几个语句括起来成为一个复合语句。
例如,if(a+b>c&&b+c>a&&c+a>b)
§2.3 if语句(续)
#include<stdio.h> void main() {
int x,y; scanf(“%d”,&x); {
程序段 } printf(“x=%d,y=%d\n”,x,y); }
2020/12/11
C语言程序设计
15
北京邮电大学世纪学院
C语言程序设计
§2.3 if语句(续)