欢迎来到天天文库
浏览记录
ID:57057091
大小:107.50 KB
页数:19页
时间:2020-07-30
《c语言程序设计(第5章)课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言程序设计第五章选择结构程序设计目录一、关系运算及其表达式二、逻辑运算及其表达式三、if语句四、switch语句作业所谓“关系运算”实际上就是“比较运算”,即将两个数据进行比较,判定两个数据是否符合给定的关系。例如,“a>b”中的“>”表示一个大于关系运算。如果a的值是5,b的值是3,则大于关系运算“>”的结果为“真”,即条件成立;如果a的值是2,b的值是3,则大于关系运算“>”的结果为“假”,即条件不成立。1.关系运算符C语言提供6种关系运算符:<(小于),<=(小于或等于),>(大于),>=(大于或等于),==(等于),!=(不等于)注意:在C
2、语言中,“等于”关系运算符是双等号“==”,而不是单等号“=”(赋值运算符)。一、关系运算及其表达式2.优先级(1)在关系运算符中,前4个优先级相同,后2个也相同,且前4个高于后2个。(2)与其它种类运算符的优先级关系关系运算符的优先级,低于算术运算符,但高于赋值运算符。3.关系表达式所谓关系表达式是指,用关系运算符将两个表达式连接起来,进行关系运算的式子。例如,下面的关系表达式都是合法的:a>b,a+b>c-d,(a=3)<=(b=5),'a'>='b'由于C语言没有逻辑型数据,所以用整数“1”表示“逻辑真”,用整数“0”表示“逻辑假”。例如,假设nu
3、m1=3,num2=4,num3=5,则:(1)num1>num2的值=0。(2)(num1>num2)!=num3的值=1。(3)num1=0”。如果需要描述“x>=0”、同时“x
4、<10”,就要借助于逻辑表达式了。1.逻辑运算符C语言提供三种逻辑运算符:&&逻辑与(相当于“同时”)
5、
6、逻辑或(相当于“或者”)!逻辑非(相当于“否定”)二、逻辑运算及其表达式2.逻辑运算符的运算优先级(1)逻辑非的优先级最高,逻辑与次之,逻辑或最低,即:!(非)→&&(与)→
7、
8、(或)(2)与其它种类运算符的优先关系!→算术运算→关系运算→&&→
9、
10、→赋值运算3.逻辑表达式所谓逻辑表达式是指,用逻辑运算符将1个或多个表达式连接起来,进行逻辑运算的式子。在C语言中,用逻辑表达式表示多个条件的组合。例如,(year%4==0)&&(year%100!=
11、0)
12、
13、(year%400==0)就是一个判断一个年份是否是闰年的逻辑表达式。逻辑表达式的值也是一个逻辑值(非“真”即“假”)。C语言用整数“1”表示“逻辑真”、用“0”表示“逻辑假”。但在判断一个数据的“真”或“假”时,却以0和非0为根据:如果为0,则判定为“逻辑假”;如果为非0,则判定为“逻辑真”。例如,假设num=12,则:!num的值=0,num>=1&&num<=31的值=1,num
14、
15、num>31的值=1。说明:(1)逻辑运算符两侧的操作数,除可以是0和非0的整数外,也可以是其它任何类型的数据,如实型、字符型等。(2)在计算逻辑表达式时,只有
16、在必须执行下一个表达式才能求解时,才求解该表达式(即并不是所有的表达式都被求解)。换句话说:1)对于逻辑与运算,如果第一个操作数被判定为“假”,系统不再判定或求解第二操作数。2)对于逻辑或运算,如果第一个操作数被判定为“真”,系统不再判定或求解第二操作数。例如,假设n1、n2、n3、n4、x、y的值分别为1、2、3、4、1、1,则求解表达式“(x=n1>n2)&&(y=n3>n4)”后,x的值变为0,而y的值不变,仍等于1!三、if语句P91三种形式:if(表达式)语句;(图5.5a)if(表达式)语句1;else语句2;(图5.5b)if(表达式1)语
17、句1;(图5.6)elseif(表达式2)语句2;……elseif(表达式n)语句n;else语句n+1;◆e1?e2:e3是if…else语句在特定情况下的变体。if语句示例【例一】以下程序的作用是什么?main(){charc;printf(“Input:”);scanf(“%c”,&c);if(c>=’a’&&c<=’z’)c=c-32;elsec=c;printf(“%c”,c);}/*将小写字母转换为大写字母*/【例二】以下程序的执行结果是什么?main(){intx=2,y=-1,z=2;if(x18、printf(“%d”,z);}/*结果是2*/哦,原来是因为else总是与
18、printf(“%d”,z);}/*结果是2*/哦,原来是因为else总是与
此文档下载收益归作者所有