关系运算与逻辑运算_第1页
关系运算与逻辑运算_第2页
关系运算与逻辑运算_第3页
关系运算与逻辑运算_第4页
关系运算与逻辑运算_第5页
已阅读5页,还剩25页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关系运算与逻辑运算1第1页,共30页,2022年,5月20日,7点25分,星期一复合的赋值运算符 在赋值符“=”之前加上其它二目运算符可构成复合赋值符。如+=,-=,*=,=,%=,=,&=,=,|=。 构成复合赋值表达式的一般形式为:变量 双目运算符=表达式它等效于变量=变量 运算符 表达式2第2页,共30页,2022年,5月20日,7点25分,星期一例如: a+=5 等价于a=a+5 x*=y+7 等价于x=x*(y+7) r%=p 等价于r=r%p复合赋值符这种写法,对初学者可能不习惯,但十分有利于编译处理,能提高编译效率并产生质量较高的目标代码。3第3页,共30页,2022年,5月20

2、日,7点25分,星期一关系运算符在语言中有以下关系运算符: 小于 大于= 大于或等于= 等于!= 不等于关系运算符的优先级低于算术运算符,高于赋值运算符。 在六个关系运算符中,,=的优先级相同,高于=和!=,=和!=的优先级相同。4第4页,共30页,2022年,5月20日,7点25分,星期一关系表达式关系表达式的一般形式为:表达式 关系运算符 表达式例如:a+bc-dx3/2a+1(bc)a!=(c=d)等。5第5页,共30页,2022年,5月20日,7点25分,星期一关系表达式的值是真”和“假”,用“1”和“0”表示。如: 50的值为“真”,即为1。(a=3)(b=5)由于35不成立,故其值

3、为假,即为0。main() char c=k; int i=1,j=2,k=3; float x=3e+5,y=0.85; printf(%d,%dn,a+5=k+1); printf(%d,%dn,1j5,x-5.25=x+y); printf(%d,%dn,i+j+k=- 2*j,k=j=i+5); getch(); 在本例中求出了各种关系运算符的值。字符变量是以它对应的ASCII码参与运算的。a+5c,a的ASCII值为97+5=102,而c的ascii值为100,顾不成立,值为0.而1jb & cd 等价于 (ab)&(cd) !b=c|da 等价于 (!b)=c)|(dc&x+yc)

4、&(x+y)0) a+; s=a; printf(“a=%d,s=%dn”,a,s); getch(); 11第11页,共30页,2022年,5月20日,7点25分,星期一格式2 if(表达式) 语句1 else 语句2功能:如果“表达式”为真,则执行“语句1”;否则执行|语句2“。12第12页,共30页,2022年,5月20日,7点25分,星期一例:输入某同学某科考试成绩,大于等于60分输出“及格”,小于60分输出“不及格”。main() int k; if (k=60) printf(“及格n”); else printf(“不及格n”); getch(); 13第13页,共30页,202

5、2年,5月20日,7点25分,星期一练习:输入任意大小的三个整数,判断其中是否有两个奇数一个偶数。若是,则输出“YES”,不是则输出“NOT” 编写一个判断一个数是否是素数的函数,若是返回1,否则返回0。14第14页,共30页,2022年,5月20日,7点25分,星期一格式3if(表达式1) 语句1else if(表达式2) 语句2else if (表达式3) 语句3 else if (表达式n)语句nelse 语句n+1例:根据用户购物的总价,选择不同的折扣率:=1000为七折,=800为八折,=500为九折。main() int cost; float rate,s; scanf(“%d”

6、,&cost); if (cost1000) rate=0.7; else if (cost800) rate=0.8; else if (cost500) rate=0.9; s=cost*rate; printf(“%fn”,s); getch();15第15页,共30页,2022年,5月20日,7点25分,星期一例:main() char c; printf(input a character: ); c=getchar(); if(c=0&c=A&c=a&cb) a+; b+; else a=0; b=10;17第17页,共30页,2022年,5月20日,7点25分,星期一在键盘中输入

7、已知数a、b、c求一元二次方程ax2+bx+c=0的解。其中分析=b2-4*a*c是否大于或等于零#include #include main() int a,b,c; float x1,x2; scanf(%d %d %d, &a,&b,&c); if (pow(b,2)-4*a*c0) x1=(-b+sqrt(pow(b,2)-4*a*c)/(2*a); x2= (-b-sqrt(pow(b,2)-4*a*c)/(2*a); printf(x1=%f,x2=%f,x1,x2); else x1=-b/(2*a); printf(x1=x2=%f,x1); getch(); 18第18页,共

8、30页,2022年,5月20日,7点25分,星期一练习:1、输入某同学某科考试成绩(0-100 之间),并进行及格与否的判断,如果输入的数值大于100或小于零输出“输入错误”。2、从键盘输入两个整数,请按从小到大的顺序排列。3、从键盘输入三个整数,输出最大和最小的数。19第19页,共30页,2022年,5月20日,7点25分,星期一分析:从键盘输入三个整数,输出最大和最小的数。main() int a,b,c,max,min; printf(input three numbers: ); scanf(%d%d%d,&a,&b,&c); if(ab) max=a;min=b; else max=

9、b;min=a; if(maxc)min=c; printf(max=%dnmin=%d,max,min);getch();20第20页,共30页,2022年,5月20日,7点25分,星期一练习:4、以下程序对输入的一个小写字母,将字母循环后移5个位置后输出.如a变成f,w变成b.请在( )填入正确内容#include main( ) char c; c=getchar( ); if(c=a&c=v&c=a&ch=z) (2) (3) printf(“%c”,ch); getch(); 22第22页,共30页,2022年,5月20日,7点25分,星期一练习6、输入三角形的边长,求三角形面积。(

10、面积=sqrt(s(s-a)(s-b)(s-c), s=(a+b+c)/2)注意:考虑三角形三边及三角形自身特点7、在键盘中输入已知数a、b、c求一元二次方程ax2+bx+c=0的解。其中分析=b2-4*a*c是否大于或等于零23第23页,共30页,2022年,5月20日,7点25分,星期一switch语句 语言还提供了另一种用于多分支选择的switch语句, 其一般形式为: switch(表达式) case常量表达式1: 语句1; case常量表达式2: 语句2; case常量表达式n: 语句n; default : 语句n+1; 24第24页,共30页,2022年,5月20日,7点25分,

11、星期一例1:main() int a; printf(input integer number: ); scanf(%d,&a); switch (a) case 1:printf(Mondayn);case 2:printf(Tuesdayn);case 3:printf(Wednesdayn);case 4:printf(Thursdayn);case 5:printf(Fridayn);case 6:printf(Saturdayn);case 7:printf(Sundayn);default:printf(errorn); main() int a; printf(input int

12、eger number: ); scanf(%d,&a); switch (a) case 1:printf(Mondayn);break; case 2:printf(Tuesdayn); break; case 3:printf(Wednesdayn);break; case 4:printf(Thursdayn);break; case 5:printf(Fridayn);break; case 6:printf(Saturdayn);break; case 7:printf(Sundayn);break; default:printf(errorn); break语句,专用于跳出swi

13、tch语句 25第25页,共30页,2022年,5月20日,7点25分,星期一例2:计算器程序。用户输入运算数和四则运算符,输出计算结果。 main() float a,b; char c; printf(input expression: a+(-,*,/)b n); scanf(%f%c%f,&a,&c,&b); switch(c) case +: printf(%fn,a+b);break; case -: printf(%fn,a-b);break; case *: printf(%fn,a*b);break; case /: printf(%fn,a/b);break; default: printf(input errorn); getch();26第26页,共30页,2022年,5月20日,7点25分,星期一练习:以下程序的输出结果 main( ) char c; int i; for(i=65;i68;i+) c=i+32; switch(c) case a: case b:case c:printf(%c,c);break; default:printf(end); 27第27页,共30页,2022年,5月20日,7点25分,星期一在使用swit

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论