资源描述:
《计算机技术基础C第七讲.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、引入引入:上节讲了当一元二次方程△>=0的求解,若△<0时应如何处理?求ax2+bx+c=0的根。(设b2-4ac>0)第5章逻辑运算和选择结构程序设计5.1关系运算5.2逻辑运算5.3if语句*5.4swith(多分支选择)语句*本章重点:1。逻辑运算符与逻辑表达式。2。选择程序设计的基本语句与应用这些语句编制选择结构程序。5.1关系运算关系运算:由关系运算符连接起来的式子(比较运算).如:a>=3.一、关系运算符?(6个)><>=<===!=二、关系表达式a>=3;a==b1、关系表达式的值逻辑值“真”(是)“假”(不是)。若
2、a=5,a>=3若a=2,a>=3C语言中没有逻辑型数据以“1”代表真,以“0”代表假。注意:判断一个量是否为“真”时以0代表“假”,以非0代表真。值为“真”值为“假”5.1关系运算三、优先级C语言的6种关系运算符:<(小于)<=(小于或等于)>(大于)>=(大于或等于)==(等于)!=(不等于)优先级相同(高)优先级相同(低)低高赋值运算关系运算算术运算关系表达式等效于结果c>a+bc>(a+b)a>b!=c(a>b)!=ca==bca=(b>c)举例说明假如:inta,b,c,d;a=b=4;c=1
3、;0101第5章逻辑运算和选择结构程序设计5.1关系运算5.2逻辑运算5.3if语句*5.4swith(多分支选择)语句*一、逻辑运算符——三种&&逻辑与(AND)并且
4、
5、逻辑或(OR)或者!逻辑非(NOT)不是5.2逻辑运算说明:(1)“&&”和“
6、
7、”是双目(元)运算符,它要求有两个运算量(操作数)。(2)“!”是一目(元)运算符。!aa=非0a=001真值表5.2逻辑运算a&&ba=0a=非0b=00001b=非0a
8、
9、ba=0a=非0b=00111b=非0如:a=1,b=2,c=3(a==0)&&(b10、为?(a==0)
11、
12、(b=3&&x<=10例如:x的取值范围为(-∞,3)或(10,+∞)x<3
13、
14、x>10三、逻辑运算符的优先级:(1)!→&&→
15、
16、(2)&&和
17、
18、低于关系运算符!高于算术运算符。!(非)算术运算符关系运算符&&和
19、
20、赋值运算符(高)(低)5.2逻辑运算举例说明逻辑表达式等效于结果(a>b)&&(x>y)a>b&
21、&x>y(a==b)
22、
23、(x==y)a==b
24、
25、x==y(!a)
26、
27、(a>b)!a
28、
29、a>b!a&&b
30、
31、x>y&&c((!a)&&b)
32、
33、((x>y)&&c))假如:inta,b,x,y,c;a=b=4;x=y=c=1;0100几个题目若a=8,!a=?若a=5,b=9,!a&&b=?4&&0
34、
35、2‘c’&&’d’若a=2,则a
36、
37、(b=2)
38、
39、(c=3)若a=0,则a&&(b=2)&&(c=3)以0代表“假”,以非0代表“真”并不是所有的逻辑运算符都被执行写出符合下列条件的表达式。1.大于2并且小于10的数(inta)。课堂练
40、习a>2&&a<102.能同时被2和3整除的数。a%2==0&&a%3==03.不能被5整除或不能被8整除的数。a%5!=0
41、
42、a%8!=0第5章逻辑运算和选择结构程序设计5.1关系运算5.2逻辑运算5.3if语句*5.4swith(多分支选择)语句**5.3if语句一、if语句的三种形式:形式1:if(表达式)语句形式2:if(表达式)语句1else语句2形式3:if(表达式1)语句1elseif(表达式2)语句2┊┊elseif(表达式n)语句nelse语句n+11.if(表达式)语句如:if(cj>=60)printf("及
43、格");说明:表达式一般为关系表达式或逻辑表达式(后面讲),表达式值非0,则为真,0为假。表达式语句假(0)真(非0)条件成立,执行语句*5.3if语句——形式1例2(P98例5.1):输入两个实数,按代数值,由小到大输出这两数。main(){;printf(”输入两个数a,b:”);scanf;if/*满足条件为1*/{t=a;a=b;b=t;}/*复合语句*/printf(“%5.2f,%6.2f”,);}运行:输入两数a,b:34.8,15.3floata,b,t;("%f,%f",&a,&b)(a>b)a,b分析:1。定义
44、:2。输入两个实数3。条件:a>b则:交换a,b4.输出:a,b例2:输入两个实数,按代数值,由小到大输出这两数。voidmain(){floata,b,t;printf("输入两个实数a,b:");scanf("%f,%f",&a,&b);if(