第2章 基本语句.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第2章 基本语句.ppt》由会员分享,可在线阅读,更多相关《第2章 基本语句.ppt(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第第2 2章章选择结构及其应用选择结构及其应用C语言程序设计2第第2章章 选择结构及其应用选择结构及其应用 关系运算符和关系表达式关系运算符和关系表达式 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式 if语句语句 switch语句语句3概述概述选择结构是程序的基本结构。所谓选择结构,就是根据不同选择结构是程序的基本结构。所谓选择结构,就是根据不同的条件,选择不同的程序块(分程序)进行处理。的条件,选择不同的程序块(分程序)进行处理。例:例:4if-elseifelse嵌套嵌套ifif-elseif-elseif(表达式)表达式)语句语句;if(表达式)表达式)语句语句;else语句语句;if
2、(表达式)表达式)语句语句;if(表达式)表达式)语句语句;else语句语句;else语句语句;if(表达式)表达式)语句语句;elseif(表达式)表达式)语句语句;elseif(表达式)表达式)语句语句;else语句语句;switchswitch(表达式)表达式)case常量常量1:语句:语句1;case常量常量2:语句:语句2;case常量常量n:语句语句n;default:语句语句n+1;52.12.1关系运算符和关系表达式关系运算符和关系表达式关系运算符和关系表达式关系运算符和关系表达式关系运算符关系运算符关系运算符是对两个操作量进行大小比较的运算符,其操作关系运算符是对两个操作量进
3、行大小比较的运算符,其操作结果是结果是“真真”或或“假假”。用。用“1”表示真;表示真;“0”表示假。表示假。=(大于或等于大于或等于)(大于大于)5)2 结果为:结果为:1例:判断下列关系表达式的值:例:判断下列关系表达式的值:6=(3+3);(x=3)5+(y=6)10=(4+(x=6)值为值为1值为值为1值为值为172.2 2.2 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑真与逻辑假逻辑真与逻辑假逻辑运算是用来判断一件事情是逻辑运算是用来判断一件事情是“成立成立”还是还是“不成立不成立”,判,判断的结果只有两种,分别用数断的结果只有两种,
4、分别用数“1”和和“0”来表示。其中来表示。其中“1”表示该逻辑运算的结果是表示该逻辑运算的结果是“成立成立”的,的,“0”表示该逻辑表示该逻辑运算的结果是运算的结果是“不成立不成立”的。的。C语言的数据类型里没有逻辑数据类型,但对参与逻辑运算的所语言的数据类型里没有逻辑数据类型,但对参与逻辑运算的所有的数值,都将转换为有的数值,都将转换为“逻辑真逻辑真”或或“逻辑假逻辑假”后才参与逻辑运后才参与逻辑运算。算。如果参与逻辑判断的数值为如果参与逻辑判断的数值为“0”,则把它作为,则把它作为“逻辑假逻辑假”处理。处理。如果参与逻辑判断的数值不为如果参与逻辑判断的数值不为“0”,则把它作为,则把它作
5、为“逻辑真逻辑真”处处理。理。不是将数值不是将数值1作为逻辑真,而是将非作为逻辑真,而是将非0的数值都作为逻辑真。的数值都作为逻辑真。上述的逻辑判断方法可以归纳为:上述的逻辑判断方法可以归纳为:判假不判真,非假即真。判假不判真,非假即真。82.2 2.2 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算符逻辑运算符!(逻辑非逻辑非)单目运算符单目运算符&(逻辑与逻辑与)双目运算符双目运算符|(逻辑或逻辑或)双目运算符双目运算符逻辑运算把一切逻辑运算把一切“非非0”的数作为真,把的数作为真,把“0”数作为假。数作为假。逻辑运算是逻辑运算是“非非0”
6、和和“0”两类数据或真和假两种状态的运算。两类数据或真和假两种状态的运算。C语言中有三个逻辑运算符:逻辑与、逻辑或、逻辑非。语言中有三个逻辑运算符:逻辑与、逻辑或、逻辑非。9&与与逻辑与逻辑与AB结结果果0 假假非非 0真真0 假假非非0真真 0 假假0 假假0 假假0 假假0 假假非非0真真 非非 0真真非非 0真真有假则假,全真才真。有假则假,全真才真。S1,S2是两个开关,是两个开关,L是一个灯是一个灯泡,在这个电路图中开关泡,在这个电路图中开关S1和和S2只有两种状态:闭合只有两种状态:闭合(用用1表表示示)和断开和断开(用用0表示表示);灯泡也;灯泡也只有两种状态:亮只有两种状态:亮
7、(用用1表示表示)和和不亮不亮(用用0表示表示)。灯泡是否亮和。灯泡是否亮和两个开关的闭合、断开之间就两个开关的闭合、断开之间就形成了一种逻辑运算形成了一种逻辑运算。例如:例如:5&3 4&0 10|或或逻辑或逻辑或有真则真,全假则假。有真则真,全假则假。例如:例如:5|3 4|0 11!非非逻辑非逻辑非非非0(真真)0(假假)0(假假)非非0(真真)例如:例如:!2 !0 122.22.2逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式逻辑表达式逻辑表达式是用逻辑运算符把操作对象连接起来而构成的式子。是用逻辑运算符把操作对象连接起来而构成的式子。逻辑表
8、达式运算结果值为逻辑表达式运算结果值为1或或0。注意区分逻辑量与逻辑值注意区分逻辑量与逻辑值例:例:4&7的逻辑值为的逻辑值为1。逻辑量逻辑量凡是参加逻辑运算的变量、常量都是逻辑量,凡是参加逻辑运算的变量、常量都是逻辑量,以以0代表代表“假假”,以非,以非0代表代表“真真”。逻辑值逻辑值逻辑量、逻辑表达式的运算结果的值就是逻辑逻辑量、逻辑表达式的运算结果的值就是逻辑值。逻辑值只能是值。逻辑值只能是“0”和和“1”这二个数。这二个数。“1”表示逻辑表示逻辑真(成立);真(成立);“0”表示逻辑假(不成立)。表示逻辑假(不成立)。逻辑量与逻辑值间的关系:一切非逻辑量与逻辑值间的关系:一切非“0”的
9、逻辑量其逻辑值都为真。的逻辑量其逻辑值都为真。注意注意2xy)printf(“the bigger one is%d”,x);15Please input a:99 CROK!#include“stdio.h”main()int a;printf(“n Please input a:”);scanf(“%d”,&a);if(a%3=0)printf(“OK!”);运行程序运行程序例例:若输入一个整数是若输入一个整数是3的倍数的倍数,则显示则显示“OK!”。否则什么也不显示。否则什么也不显示。注意:判断是否相等注意:判断是否相等用用“=”,而不能用赋,而不能用赋值运算符值运算符“=”16例例2.
10、3:求两个数:求两个数a和和b中较大的数。中较大的数。#include stdio.hvoid main()int a,b,x;/*定义定义3个变量个变量*/printf(please input two integers:);/*屏幕输出提示语屏幕输出提示语*/scanf(%d%d,&a,&b);/*输入两个整数输入两个整数*/x=a;/*假设假设a是较大的数先赋给是较大的数先赋给x*/if(a 100)printf(“bigger than 100.n”);else printf(“less than or equal to 100.n”);Please input a number:89
11、 CRless than or equal 100.运行程序运行程序例:例:输入一个整数,判断其值是否大于输入一个整数,判断其值是否大于100。21#include“stdio.h”main()int a,b;printf(“n Please input a and b:”);scanf(“%d,%d”,&a,&b);if(a b)printf(“max=%d”,a);else printf(“max=%d”,b);Please input a and b:100,99CRmax=100运行程序运行程序例例:输入两个整数,将较大的数输出。输入两个整数,将较大的数输出。222.3.3多分支多分支
12、ifelseifelse形式形式程序形式程序形式:if(表达式表达式1)语句语句1;elseif(表达式表达式2)语句语句2;elseif(表达式表达式3)语句语句3;else语句语句4;表达表达式式语句语句4语句语句3表达式表达式2程序流程程序流程表达式表达式1真真语句语句1假假语句语句2表达式表达式3假假假假真真真真if-else if-else多分支结构可以判断多种情况。多分支结构可以判断多种情况。23A=90,A.(90-100)。B=80,B.(80-89)。C=70,C.(70-79)。D=60,D.(60-69)。E=0,E.(0-59)。main()float score;pr
13、intf(“n Enter a score:”);scanf(“%f”,&score);if(score=90)printf(“A n”);else if(score=80)printf(“B n”);else if(score=70)printf(“C n”);else if(score=60)printf(“D n”);else if(score=0)printf(“E n”);else printf(“Error Data!”);例例:学生成绩分学生成绩分A、B、C、D、E 五等。五等。任给一个成绩,判断它属于哪一等,用任给一个成绩,判断它属于哪一等,用 if-else if 分支语句编
14、程。分支语句编程。该该程序程序score大于大于100,输出,输出A。score小于小于0,输出,输出Erroe Data!。score值应在值应在0-100之间。之间。24例:计算并输出例:计算并输出y的值的值 3x-1x06x2+9x-50=x10y=10=x=25#include“math.h”#include“stdio.h”main()floatx,y;scanf(“%f”,&x);if(x0)y=3*x-1;elseif(x10)y=6*x*x+9*x-5;elseif(xy);(2)if(xy)a=10elsea=100;(3)if(x=y)a=10;printf(“%d”,a)
15、;elsea=100;(4)if(5)a=10;(2)(3)(2)if(xy)a=10;else a=100;(3)if(x=y)a=10;printf(“%d”,a);else a=100;262.3.4 嵌套的嵌套的if语句语句if(e1)if(e2)S3;else S4;else if(e3)S5;else S6;入入口口入入口口出出口口出出口口出出口口出出口口出出口口出出口口分支嵌套应注意:分支嵌套应注意:if和和else的配对关系。的配对关系。程序的走向,即程序的入口和出口、执行部分和非执行程序的走向,即程序的入口和出口、执行部分和非执行(跳出跳出)部分。部分。if(e1)S1;el
16、seS2;在程序设计中,经常用到条件分支嵌套。条件分支嵌套就是在程序设计中,经常用到条件分支嵌套。条件分支嵌套就是在一个分支中包含(嵌套)另一个分支在一个分支中包含(嵌套)另一个分支。s4假真e2e3s3s5s6假假真真e1每个分支都要有每个分支都要有被执行的可能性被执行的可能性27main()int x,y,z,min;printf(“n Please input x,y,z:”);scanf(“%d%d%d”,&x,&y,&z);if(x y)if(xz)min=x;else min=z;else if(yz)min=y;else min=z;printf(“n min=%d”,min);
17、Please input x,y,z:100 5 29CRmin=5运行程序运行程序例例:任意输入三个整数,求其中最小的数。任意输入三个整数,求其中最小的数。if与与else配对关系:一个配对关系:一个else总是与其上面距它最近总是与其上面距它最近的,并且没有其它的,并且没有其它else与其配对的与其配对的if相配对。最好将相配对。最好将程序中配对的程序中配对的if-else的位置对齐,这样可以提高程序的的位置对齐,这样可以提高程序的可读性;可读性;程序的走向,即程序的入口和出口、执行部分和非执程序的走向,即程序的入口和出口、执行部分和非执行行(跳出跳出)部分。部分。每个每个if-else有
18、一个入口,两个出口。有一个入口,两个出口。if与与else配对关系与程序的走向:配对关系与程序的走向:if(e1)if(e2)s1;elseif(e3)s2;elses3;入口入口真真e3e1e2S1S2S3真真真真假假假假假假出出口口出出口口出出口口出出口口if(e1)if(e2)s1;elseif(e3)s2;elses3;入口入口出出口口出出口口出出口口出出口口假假e3e1e2S1S2S3真真真真真真假假假假if与与else配对关系:配对关系:对于选择结构的对于选择结构的程序来说,每次程序来说,每次运行程序时,只运行程序时,只能从一个入口进,能从一个入口进,一个出口出,即一个出口出,即只
19、能有一个分支只能有一个分支被执行。被执行。30例:假定所有变量均已正确定义,下列程序段执行例:假定所有变量均已正确定义,下列程序段执行后,后,x的值是:的值是:a=b=c=0;x=35;if(!a)x-;elseif(b);if(c)x=3;elsex=4;A)34B)4C)35D)3答案:答案:Bif(!a)x-;else if(b);if(c)x=3;else x=4;x=34x=4313.3.5 开关分支开关分支在计算机程序设计中,实际问题常常需要用到在计算机程序设计中,实际问题常常需要用到多分支的选择。多分支的选择。if-else语句只能有两个分支可供选择,不能满语句只能有两个分支可供
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 基本语句 基本 语句
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内