选择结构程序设计PPT课件

合集下载

C语言程序设计第4章选择结构程序设计ppt课件

C语言程序设计第4章选择结构程序设计ppt课件

8
printf("grade is E" );
9 else if (score >=60 && score<70 )
10
printf( "grade is D");
11 else if (score >=70 && score<80 )
12
printf( "grade is C");
13 else if (score>=80 && score<90 )
printf("a,b="); scanf("%d,%d",&a,&b); if (a>b) max=a; else max=b; printf("max=%d\n",max); }
结束
8
3.if-else if-else语句
(1)语句格式:
if (表达式1) 语句1
else if (表达式2) 语句2
不再判断,顺序执 行下面的语句
21
4.2 switch语句
switch (表达式) {case 常量表达式1:语句1 case 常量表达式2:语句2 …… case 常量表达式n:语句n [default:语句n+1] }
注意:
1. <表达式>可以是整型或字 符型表达式; 2. case后面必须是常量表达 式,不能包含变量; 3. 每个常量表达式的值应互 不相同; 4. case语句先后顺序随意; 5.若从上至下没有找到与表 达式的值相匹配的case,含有 default子句时,执行语句n+1。

c语言(第五章选择结构) c语言 教学课件

c语言(第五章选择结构) c语言 教学课件
▪ 非闰年的判别:
• !((year%4==0 && year%100!=0)||year%400==0)或者:
• (year%4!=0 )||( year%100==0 && year%400!=0)
C语言程序设计
第五章 选择结构程序设计
5.3 if语句(条件选择语句)
• if语句的三种形式 ▪ 形式一: • 格式:
语句2
=0
表达式3 非0
语句3
=0 语句4
C语言程序设计
第五章 选择结构程序设计
• 例:
if (salary>1000) else if (salary>800) else if (salary>600) else if (salary>400) else index=0;
index=0.4; index=0.3; index=0.2; index=0.1;
if (x>0) printf(“%f”,x) ;
else printf(“%f”,-x);
(3)在if 和else 后面可以只含一个内嵌的语句,也可以有 多个操作语句,此时用花括号将几个语句括起来成为一 个复合语句。如:
if (x>y)
{ t=x ; x=y ; y=t ; }
C语言程序设计
第五章 选择结构程序设计
a=4;b=5;
!a
//值为0
a&&b //值为1
a||b
//值为1
!a||b
//值为1
4&&0||2 //值为1
5>3&&2||8<4-!0 //(5>3)&&2||(8<(4-(!0))) 值为1

C语言程序设计-if_else选择结构PPT

C语言程序设计-if_else选择结构PPT

情景实现
int main() {
int i; printf(“明天下雨请输入1,不下雨请输入0\n”); scanf(“%d”,&i); if(i==0)
printf(“明天不下雨去春游\n”); else
printf(“明天下雨去图书馆\n”); return 0; }
例题讲解
从键盘上输入两个实数,比较并输出这两个数中 较大的一个。
printf(“两个数中较大的为%d\n”,b); return 0; }
课堂练习
体质指数 (Body Mass Index,简称BMI),是目前国际最常 用来量度体重与身高比例的工具。它利用身高和体重之间的 比例去衡量一个人是否过瘦或过肥。 体质指数(BMI)=体重(kg)/身高 (m)^2 编写一个C语言程序,输入班级某同学的身高体重,判断某 同学是否超重(BMI值大于24)。(在VC中实现此C程序)
C语言程序设计
使用if-else语句实现选择结构程序
目录
CONTENTS
01 情景导入 02 情景分析 03 if-else选择语句 04 例题讲解 05 课堂练习
情景导入
明天是周末,天气预报说明天有可能下雨, 小明计划如果明天不下雨就出去春游,否则 的话就去图书馆看书。 请根据以上情景设计一个C语言程序,模拟 小明明天的活动情况。
情景分析
根据案例描述,小明明天的活动有两个选择,去春游 或者去图书馆。小明具体选择什么活动要看明天是否 下雨。 在C语言中,可以通过if-else语句来实现类似的选择程序。
if-else选择语句
if-else语句的语法结构
if(条件) 选择语句1:; else 选择语句2;
开始if结构
成立

《C语言程序设计(第五版)》第4章选择结构程序的设计 PPT课件

《C语言程序设计(第五版)》第4章选择结构程序的设计 PPT课件

►(b*b-4*a*c)>=0
b*b-4*a*c>=0
►z= (x>y+3)
z= x>y+3
►(a>b)= = c
a>b= =c
►a=(b!=c)
a=b!=c
当然为提高程序的可读性、可维护性你不妨多使用 括号,因为C语言中的有些优先级很容易让你不小心犯 错。
C语言程序设计
第4章 选择结构程序设计
第10页
“>”的结果为“假”,即条件不成立。
C语言程序设计
第4章 选择结构程序设计
第5页
4.1 关系运算及关系表达式
4.1.1 关系运算符及其优先次序
运算符
含义
> 大于
优先级
结合性
>= 大于或等于 这些关系运算符等优
< 小于
先级,但比下面的优 先级高
左结合性
<= 小于或等于
== 等于 != 不等于
这些关系运算符等优 先级,但比上面的优 先级低
C语言程序设计
第4章 选择结构程序设计
第4页
4.1 关系运算及关系表达式
所谓“关系运算”实际上就是“比较运算”, 即将两个数据进行比较,判定两个数据是否符合 给定的关系。例如,
► “x>y+3”中的“>”表示一个大于关系运算。 ➢如果a的值是5,b的值是1,则大于关系运算
“>”的结果为“真”,即条件成立; ➢如果a的值是2,b的值是1,则大于关系运算
因为按照自左至右的结合方向,先执行关系运算
“a>b”得值为1(“真”),再执行关系运算“1>c”, 得值为0(“假”),因此y为0。
C语言程序设计

C语言程序设计ppt课件-第3章-选择结构

C语言程序设计ppt课件-第3章-选择结构
1.表达式 2. if语句 3. switch语句 4. 选择结构的嵌套 5. 选择结构的应用
本章主要内容
1
选择结构
在解决大量的实际问题时,常常需要根据不同的 情况或条件,制定出不同的解决方案或对策。
选择结构是通过对条件 的判断来选择执行不同 的程序语句。
选择结构
一个程序若具有了判断和选择功 能,就具备了最基本的智能。
的完整的解题步骤。
void main() { int x,y,z,max;
printf("“\n Please input x,y,z: ");
➢将同影一响问到题算可法用乃不至同程算序法的解效决率,sifc(a。xm而n>afy(一一x)"=%x个个;d%算算d法法%d的的",&评质x价,量&y主优,&要z劣); 从时间复杂度和空间复杂度来els考e 虑。
max=y;
例从键盘输入三个不同的、无序if(mm的aaxx整<=zz)数; ,并分别存放 到变量x、y、z中,然后通过pr判int断f("输\n 出ma三x=%个d数\n"中,m的ax)最;
大数。要求将最大数存放在} 变量max中。
25
语法练习(单选题)
1.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中
switch语句的应用
关例键从语键句盘:上输入一个学生的总平均成 绩能用(i大f- e于ls0e且if来小替于换10吗0)? swi,tc按h(分(i数nt段)(评sc定or出e/成10绩.的0)相) 应等级,90以上为A级,80~
{89为caBs级e ,97:0~g7r9a为dCe=级'A,'6;0~br6e9a为k;D级,59以下为E级。 问题分ca析se:s8w:itchg语ra句de中='的B表';达b式re只ak能; 是整型或字符型,所 以可c用as成e 绩7的:高位gr数ad字e=来'C确';定b其re对a应k;的分数段,而每一个 分数c段as又e对6应:swigtrcha中de的='一D'路; 选br择ea。k;可用表达式“((int)(成 绩/1c0)a)s”e 计5算:出成绩的高位数字 ,其中,“(int)”的功能 是将c表as达e式的4:值强制转换成整数。

C语言课件 第5章

C语言课件 第5章
如果x<y, max=y, min=x ③ 输出最大值max、 最小值min
第5章 选择结构程序设计
/*程序 5 - 3, 求两个数的最大值、 最小值*/ main( ) { float x, y; float max, min; printf(″请输入两个数x, y: ″); scanf(″%f, %f″, &x, &y); if (x>y) {max=x; min=y; } else {max=y; min=x; } printf(″max=%6.2f, min=%6.2f\n″, max, min); } 输入数据: 1.2, 2.54 运行结果: max= 2.54, min= 1.20
第5章 选择结构程序设计
5.1.3 多分支if语句
多分支if语句不是一条具体的语句,它通过if语句的嵌套实
现。其一般形式为: if (条件表达式1)
if (条件表达式2) 语句1
else 语句2 else if (条件表达式3) 语句3 else 语句4
第5章 选择结构程序设计
T T
条件表达式1 条件表达式2
}
第5章 选择结构程序设计
例 5 — 7 将例 5 — 5 用switch语句实现。
switch ((int)(cj/10)) { 10: 9: ch=′A′; break; /*注意选择表达式的构造*/
8: ch=′B′; break;
7: ch=′C′; break; 6: ch=′D′; break;
第5章 选择结构程序设计
例 5 –3 输入两个数, 求两个数的最大值、最小值。 数据分析:
输入量: 两个数x、 y, float

c语言 第四章 选择结构课件

c语言 第四章 选择结构课件

if (expr1) if (expr2) statement1 else statement2
内嵌if
if (expr1) if (expr2) statement1
else statement3
内嵌if
if (expr1) statement1
else if(expr3) statement3 else statement4
if ~ else 配对原则:缺省{ }时,else 总是和它上面离它最近的未配对的if配对
if(……) if(……) if(……) else…... else…...
else…...
例: if (a==b) if(b==c) printf("a==b==c");
else printf("a!=b");
if(x>y) printf("X>Y\n");
else printf("X<Y\n");
else printf("X==Y\n");
}
运行:Enter integer x,y:12,23 X<Y Enter integer x,y:12,6 X>Y Enter integer x,y:12,12 X==Y
内嵌if
if (expr1)
if (expr2) else
statement1 statement2
内嵌if
else
if(expr3) else
statement3 statement4
内嵌if
例 输入两数并判断其大小关系
main() { int x,y;
printf("Enter integer x,y:"); scanf("%d,%d",&x,&y); if(x!=y)

C语言第四章选择结构ppt课件

C语言第四章选择结构ppt课件
/* 定义实型变量 x , y */
/* 求 x 的绝对值并赋给 y */
/* 输入 x 的值 */
/* 输出 x 的绝对值 */
/* 编译预处理:包含头文件 */
二、if ... else 语句
对这一句话“如果x>=0则y=x,如果x<0则y=-x”,可以写出以下语句:
表达式1 ? 表达式2 :表达式3
表达式1为真,结果为表达式2的值 表达式为假,结果为表达式3的结果; 运算符 “ ?:”的优先级只在逗号和赋值运算 符之前;表达式2和表达式3只可能执行一个;这是C语言中的唯一一个三目运算符;条件运算符的结合方向为“自右自左”。
例:已知a=5,b=6,c=7,d=8,n=2 ; 执行以下语句后表达式的值为多少? n的值为多少? (a < b ) ? ( c + d ) : ( + + n )
if ( 表达式1 ) if ( 表达式2 ) 语句1; else 语句2;else if ( 表达式3 ) 语句3; else 语句4;
实现if ~ else 正确配对方法:加{ }
五、条件运算符
能否把两条语句合成一句,更好地体现这种逻辑关系呢?这就是 if ...... else 语句的功能。
简单的if 语句只能表达“如果 ,那么 ”的含义,而if ...... else 语句却能表达“如果 那么 否则 ”的含义。
If ( x>=0) y=x;if (x<0) y=-x;
a>b?a:c>d?c:d
a>b?a:(c>d?c:d)
表达式值为15,n=2
六、 switch 语句
switch 语句是多分支的选择语句又称开关语句。

第4章选择结构程序设计.ppt

第4章选择结构程序设计.ppt

材料与能源学院
2019/10/19
C语言程序设计
4.2.1 用if语句处理选择结构举例
例4.2 输入两个实数,按代数值由小到大 的顺序输出这两个数。
解题思路:
只需要做一次比较,然后进行一次交换即可 用if语句实现条件判断 关键是怎样实现两个变量值的互换
互换前 A ★
●B
互换后 A ●
表达式值为真(1)是非闰年,否则为闰年。
材料与能源学院
2019/10/19
Page21
C语言程序设计
4.5 条件运算符和条件表达式
条件运算符 格式:表达式1?表达式2:表达式3
功能:判断表达式1的值,如果成立就执行表达式2,否 则就执行表达式3
使用场合:若在if语句中,当被判别的表达式的值为“真” 或“假” 时,都执行一个赋值语句且向同一个变量赋值 时,可以用一个条件运算符来处理。
内嵌if 内嵌if
匹配规则:else总是
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;
材料与能源学院
2019/10/19
Page14
为(ch+32),即相应的小写字母。如果ch的值不是大 写字母,则条件表达式的值为ch,即不进行转换。
scanf("%c",& ch);
ch=(ch>='A'&&ch<='Z')?(ch+32):ch;
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一直这样做下去


表达式3 假 直到得出最后结果

语句1
语句2
语句3
语句4
上一页
下一页
方法三:语句1与语句2都为if语句
#include<stdio.h> main( ) { float x,y;
scanf(“%f”,&x); if(x<=0)
if(x>= -10) y=2+x; else y=2*x; else if(x<=10) y=x-2; else y=x/10; printf(“\ny=%f”,y); }
教学重点:
if语句、嵌套程序。
上一页
下一页
很多问题是顺序结构解决不了的
看这样一个例子:
计算分段函数
x<0
Y
N
y=3-x y=2x
N-S图
x在大于等于0和小于0两种不同的情况时,函数 将用不同的表达式来求y的值,这时就需要在计 算y的值之前,先对x的值进行判断,C语言中用 选择语句来实现这一判断。算法N-S图如右上图 所示。
0
语句1_1
语句1_2
非0
语句2_1
语句2_2
上一页
下一页
说明: if后面的表达式类型任意
语句可以是复合语句 如:if(ifx()a==b&if(&xx!==0=)y) printf(“a=b,x=y”);
if(if!(x3)) priinf(tfx(=“=O0K)”); 例 考i虑f(‘下a’)面p程ri序ntf的(“%输d出”,结’a’果); :
上一页
下一页
练习:编程实现,从键盘输入一个字符,如果是 字母,则输出对应的ASCII码,否则,输出“%”。
main()
{char a;
scanf("%c",&a);
if( a>='A'&&a<='Z'||a>='a'&&a<='z'
)
printf(“%d \n",a);
else
printf(“ %% \n");
第4章 选择结构程序设计
4.1 关系运算符与关系表达式 4.2 逻辑运算符与逻辑表达式 4.3 if语句 4.4 switch语句 4.5 结构嵌套程序举例
(其中4.1、4.2两节已在第二章中详细介绍,此处 不再赘述。)
上一页
下一页
教学目的和基本要求:
要求学生掌握选择结构程序设计, 嵌套程序设计,学会运用if语句及 switch语句。
if(x>10) y=x/10;
printf(“\ny=%f”,y);
}
上一页
下一页
方法二:用if语句做语句2
#include<stdio.h> main( ) { float x,y;
scanf(“%f”,&x); if(x<=-10) y=2*x; else if(x<=0) y=2+x;
else if(x<=10) y=x-2; else y=x/10;
这种用if语句作为上一层if语句的语句1和语句2 的结构,称为if语句的嵌套。
上一页
下一页
if 语句的二层嵌套结构如下:
if ( 表达式1)
if ( 表达式1_2) 语句1_1
else
语句1_2
else
if ( 表达式2_1) 语句2_1
else
语句2_2
非0
表达式1
0
表达式1_2
非0
0
表达式1_2
例:计算分段函数:y= x-2 0<x<=10
x/10 x>10
上一页
下一页
方法一:用简单语句
#include<stdio.h>
main( )
{ float x,y;
scanf(“%f”,&x);
if(x<=-10) y=2*x;
if(-10<x&&x<=0) y=2+x;
if(0<x&&x<=10) y=x-2;
3. (条件表达式)后不要加;
上一页
下一页
例:计算分段函数
main() { float x , y;
scanf(“%f ”, &x); y=2*x; if ( x < 0 ) y = 3 - x ; printf(“y= %.2f”, y ); }
上一页
下一页
例:输入两个数X,Y,如果x大于y,则交换两数。
}
上一页
下一页
if语句的语句1和语句2又称为if的执行语 句。if的执行语句在语法上是一条语句,可以 是任何类型的语句,简单语句、复合语句、 空语句、流程控制语句都可以作为if的执行语 句。
下面我们通过一个例子分别介绍用不同 的语句作为if的执行语句的情形:
2*x x<= -10 2+x -10<x<=0
printf(“\ny=%f”,y); }
这种用if语句作为上一层if语句的语句2的结构, 称为if语句的多分支选择结构。
上一页
下一页
多分支选择语句一般形式:
if (表达式) 语句1
else if (表达式)语句2

表达式1
else …
流程图如左:
先判断表达式1的值


表达式2
为0就执行下一个判断 非0就执行下面的语句
上一页
下一页
C语言中的选择语句有两种:
双分支选择语句 if 多分支选择语句 switch
上一页
下一页
4.3 if语句
1. if语句的最简单形式:
if (条件表达式) 语句;
if (条件表达式) { 语句;
语句;
……}
表达式

语句

说明:1. 条件表达式的值为1或0,必须用( )括住 2. 若有多条语句(复合语句)时,用{ }括住。
上一页
下一页
例: 输入两个数, 比较其大小, 将较大的数输出。
算法分析: (1) 输入两个数据a,b ; (2) 如果a>b 则输出a ;否则,输出b。
#include <stdio.h> main( ) { float a, b; scanf(“%f, %f”,&a, &b); if (a>b) printf (“%f”, a ); else printf (“%f”, b ); }
main() { int x , y;
scanf(“%d,%d ”, &x,&y); if ( x < y ) {
t = x; x = y; y = t; } printf(“x= %d,y=%d”, x,y ); }
上一页
下一页
2. if语句的双分支形式:
if (表达式) 语句1
else
语句2
执行过程: 首先先判断表达式的值 若为非0则执行语句1 若为0则执行语句2

表达式

语句1
语句2
if语句的双分支形式,在语法上视 为一条语句。
上一页
下一页
例:计算分段函数
main() { float x , y;
scanf(“%f ”, &x); if ( x < 0 ) y = 3 - x ; else y = 2 * x ; printf(“y= %.2f”, y ); }
相关文档
最新文档