第4章选择结构.doc
![资源得分’ 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)
《第4章选择结构.doc》由会员分享,可在线阅读,更多相关《第4章选择结构.doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章 选择结构考核知识点l if语句的实现选择结构l 用switch语句实现多分支选择结构l 选择结构的嵌套l goto语句和语句标号的使用重要考点提示l 选择语句的简单操作l if语句的嵌套操作l switch语句的使用4.1 关系运算符和关系表达式关系运算是逻辑运算中较简单的一种。所谓“关系运算”其实就是“比较运算”,对两个值进行比较,判断其比较后的结果是否符合指定,从而执行不同的程序段。1. 关系运算符及其优先次序C语言提供了6种关系运算符,见表4-1表4-1 关系运算符关系运算符名称小于大于=大于或等于=等于!=不等于小提示:由两个字符组成的运算符之间不可以加空格,关系运算符都是双目
2、运算符。(1) 结合性:自左向右。(2) 优先次序:前4种关系运算符的优先级别相同,后两种优先级相同,且前4种的优先级高于后两种;关系运算符的优先级低于算术运算符,高于赋值运算符。2. 关系表达式由关系运算符连接而成的表达式(可以是算术表达式、关系表达式或其他表达式)称为关系表达式。当关系运算符两边值的类型不一致时,若一边是整型,一边是实型,系统将自动把整型数转化为实型数,然后进行比较。4.2 逻辑运算符和逻辑表达式1.逻辑运算符及其优先级C语言提供了3种逻辑运算符,见表4-2表4-2 逻辑运算符符号名称&逻辑与|逻辑或!软软非“&”和“|”是双目运算符,要求要有两个操作数,而“!”是单目运算
3、符,只要求一个操作数即可,以上逻辑运算符的优先级是:“!”级别最高,其次是“&”,“|”级别最低,逻辑运算符中的“&”和“|”低于关系运算符,而“!”高于关系运算符。2.逻辑表达式逻辑表达式是由逻辑运算符和运算对象组成,其中,参与逻辑运算的对象可以是一个具体的值,还可以是C语言中任意合法的表达式,逻辑表达式的运算结果为1。若a=5,则!a的值为0。因为a的值为5,被认做是“真”,对它进行“非”运算后,结果为“假”,即结果为0.当A和B的值结合方式不同时,各种逻辑运算所得到的结果是不同的。见表4-3表4-3 逻辑运算表AB!A!BA&BA|B110011100101011001001100值得注
4、意的是:在数学中,关系式0x10是可以使用的,表示x的值应在大于0且小于10的范围内。但在C语言中却不能用0x10这样一个关系表达式来表示上述逻辑关系,即关系运算符不能连用,但可以借助逻辑运算符来辅助运算,正确的表示方法是0x&xy)&(n=cd),其中x=1,y=2,c=3,d=4若m和n的原值为1,由于“xy”的值为0,因为m=0,而不执行“n=cd”,所以n的值不是0而是原值1。4.3 IF语句和用IF语句构成的选择结构if语句用来对所给定的条件进行判定,判断其表达式的值是否满足某种条件,并根据判定的结果决定执行给出的两种操作中的哪一种。1. if语句的几种形式(1) if(表达式)语句
5、例如:if(ab)printf(“The answer is right!n”);其中,if是C语言关系字,ab是条件判断表达式。表达式两侧的括号不可少,并且只能是圆括号,不能用其他括号替代。紧跟着的是一条输出语句,称为if子句。如果在if子句中需要多个语句,则应该使用大括号()把一组语句括起来构成复合语句,这样在语法上满足“一条语句”的要求。(2) if(表达式) 语句1else 语句2例如:if(ab)printf(“The answer is right.n”);else printf(“The answer is wrong.n”);(3) if(表达式) 语句1else if(表达式
6、2)语句2else if(表达式m) 语句1else 语句n“语句1”是if子句,“语句2语句m”是else子句。这些子句在语法上要求是一条语句,但需要执行多条语句时,则应该使用花括号()把这些语句括起来组成复合语句。小提示:else不能独立成为一条语句,它只是if语句的一部分,不允许单独出现在程序中。else必须与if配对,共同组成ifelse语句。2.if语句的嵌套在if语句中又包含一个或多个if语句结构,称为if语句的嵌套,一般形式如下:if() if( ) 语句1 else 语句2else if() 语句3 else 语句4应当注意:else总是与它上面的最近的没有与else配对的if
7、配对。3.条件运算符构成的选择结构有如下语句:if(xy) min=x; /*求两数中较小的一个*/else min=y;可以用min=(xy)?x:y来替换,其中(xy)?x:y是一个条件表达式,“?:”就是条件运算符。该表达式是这样执行的:如果(xb)printf(“%d”,a);Bif(&);a=m;Cif(1)a=m;else a=n;Dif(a0);elde a=n;2读下列程序:#include main()float a,b,t;scanf(“%f,%f”,&a,&b);if(ab)t=a;a=b;b=t;printf(“%5.2f,%5.2f”,a,b);运行时从键盘输入3.8
8、和则正确的输出结果是( )。A-3.40,-3.80B-3.40,3.80C-3.4,3.8D3.80,-3.403读下列程序:#include main()int x,y;scanf(“%d”,&x);y=0;if(x=0)if(x0)y=1;else y=-1;printf(“%d”,y);当从键盘输入32时,程序的输出结果为( )( )A0B-1C1D不确定值4对下述程序,( )是正确判断。#include main()int x,y;scanf(“%d,%d”,&x,&y);if(xy)x=y;y=x;else x+;y+;printf(“%d,%d”,x,y);A有语法错误,不能通过
9、编译B若输入数据3和4,则输出4和5C若输入数据4和3,则输出3和4D若输入数据4和3,则输出4和45以下程序的输出结果是( )。#include main()int x=1,y=0,a=0,b=0;switch(x)case 1:switch(y)case 0:a+p;break;case 1:b+;break;case 2:a+;b+;break;case 3:a+,b+;printf(“na=%d,b=%d”,a,b);Aa=2,b=0Ba=2,b=1Ca=1,b=1Da=2,b=26这表示关系:xyz,应使用的C语言表达式是( )。A(x=y)&(y=z)B(x=y)AND (Y=Z)
10、C(x=y=z)D(x=y)&(y=z)7以下程序正确的输出结果是( )#include main()int a=2,b=-1,c=2;if (ab)if(b0)c=0;else c+=1;printf(“%dn”,c);A0B2C3D48以下程序的输出结果是( )。#include main()int w=4,x=3,y=2,z=1;printf(“%dn”,(wx? w:zy?zx);A1B2C3D49以下程序的运行结果是( )。#include main()int k=2;switch(k)case 1:printf(“%dn”,k+);break;case 2:printf(“%d”,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第4章 选择结构 选择 结构
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内