《关系运算与逻辑运算精选PPT.ppt》由会员分享,可在线阅读,更多相关《关系运算与逻辑运算精选PPT.ppt(30页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、关系运算与逻辑运算1第1页,此课件共30页哦复合的赋值运算符复合的赋值运算符 o在赋值符“=”之前加上其它二目运算符可构成复合赋值符。如+=,-=,*=,=,%=,=,&=,=,|=。o构成复合赋值表达式的一般形式为:o变量 双目运算符=表达式o它等效于o变量=变量 运算符 表达式2第2页,此课件共30页哦例如:o a+=5 等价于a=a+5o x*=y+7 等价于x=x*(y+7)o r%=p 等价于r=r%p复合赋值符这种写法,对初学者可能不习惯,但十分有利于编译处理,能提高编译效率并产生质量较高的目标代码。3第3页,此课件共30页哦关系运算符关系运算符在语言中有以下关系运算符:o 小于o
2、 大于o=大于或等于o=等于o!=不等于o关系运算符的优先级低于算术运算符,高于赋值运算符。在六个关系运算符中,,=的优先级相同,高于=和!=,=和!=的优先级相同。4第4页,此课件共30页哦关系表达式关系表达式关系表达式的一般形式为:o表达式 关系运算符 表达式o例如:oa+bc-dox3/2oa+1(bc)oa!=(c=d)o等。5第5页,此课件共30页哦o关系表达式的值是真”和“假”,用“1”和“0”表示。o如:o 50的值为“真”,即为1。o(a=3)(b=5)由于35不成立,故其值为假,即为0。main()char c=k;int i=1,j=2,k=3;float x=3e+5,y
3、=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)&(x+y)0)a+;s=a;printf(“a=%d,s=%dn”,a,s);getch();11第11页,此课件共30页哦格
4、式2 if(表达式)语句1 else 语句2功能:如果“表达式”为真,则执行“语句1”;否则执行|语句2“。12第12页,此课件共30页哦例:o输入某同学某科考试成绩,大于等于60分输出“及格”,小于60分输出“不及格”。main()int k;if(k=60)printf(“及格n”);else printf(“不及格n”);getch();13第13页,此课件共30页哦练习:o输入任意大小的三个整数,判断其中是否有两个奇数一个偶数。若是,则输出“YES”,不是则输出“NOT”o编写一个判断一个数是否是素数的函数,若是返回1,否则返回0。14第14页,此课件共30页哦格式3if(表达式1)语
5、句1else if(表达式2)语句2else if(表达式3)语句3 else if(表达式n)语句nelse 语句n+1例:根据用户购物的总价,选择不同的折扣率:=1000为七折,=800为八折,=500为九折。main()int cost;float rate,s;scanf(“%d”,&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页哦例:main()char c;printf(inp
6、ut a character:);c=getchar();if(c=0&c=A&c=a&cb)a+;b+;else a=0;b=10;17第17页,此课件共30页哦在键盘中输入已知数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(x
7、1=%f,x2=%f,x1,x2);else x1=-b/(2*a);printf(x1=x2=%f,x1);getch();18第18页,此课件共30页哦练习:1、输入某同学某科考试成绩(0-100 之间),并进行及格与否的判断,如果输入的数值大于100或小于零输出“输入错误”。2、从键盘输入两个整数,请按从小到大的顺序排列。3、从键盘输入三个整数,输出最大和最小的数。19第19页,此课件共30页哦分析:从键盘输入三个整数,输出最大和最小的数。main()int a,b,c,max,min;printf(input three numbers:);scanf(%d%d%d,&a,&b,&c)
8、;if(ab)max=a;min=b;else max=b;min=a;if(maxc)min=c;printf(max=%dnmin=%d,max,min);getch();20第20页,此课件共30页哦练习: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页哦练习6、输入三角形的边长,求三角形面积。(面积=sqrt(s(s-a)(s-b)(s
9、-c),s=(a+b+c)/2)注意:考虑三角形三边及三角形自身特点考虑三角形三边及三角形自身特点7、在键盘中输入已知数a、b、c求一元二次方程ax2+bx+c=0的解。其中分析=b2-4*a*c是否大于或等于零23第23页,此课件共30页哦switch语句 语言还提供了另一种用于多分支选择的switch语句,其一般形式为:switch(表达式)case常量表达式1:语句1;case常量表达式2:语句2;case常量表达式n:语句n;default :语句n+1;24第24页,此课件共30页哦例1:main()int a;printf(input integer number:);scanf(
10、%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 integer number:);scanf(%d,&a);switch(a)case 1:printf(Mondayn);break
11、;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);breakbreak语句,专语句,专用于跳出用于跳出switchswitch语句语句 25第25页,此课件共30页哦例2:计算器程序。用户输入运算数和四则运算符,输出计算结果。main()
12、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页哦练习:以下程序的输出结果 main()main()char c;char c;int i;int
13、i;for(i=65;i68;i+)for(i=65;i68;i+)c=i+32;c=i+32;switch(c)switch(c)case a:case a:case b:case c:printf(%c,c);break;case b:case c:printf(%c,c);break;default:printf(end);default:printf(end);27第27页,此课件共30页哦在使用switch语句时还应注意以下几点:o在case后的各常量表达式的值不能相同,否则会出现错误。o在case后,允许有多个语句,可以不用括起来。o各case和default子句的先后顺序可以变动,而不会影响程序执行结果。odefault子句可以省略不用。28第28页,此课件共30页哦29第29页,此课件共30页哦30第30页,此课件共30页哦