收藏 分销(赏)

程序的三种结构关系运算符和关系表达式逻辑运算符和逻辑表.ppt

上传人:xrp****65 文档编号:13187651 上传时间:2026-02-01 格式:PPT 页数:23 大小:202.50KB 下载积分:10 金币
下载 相关 举报
程序的三种结构关系运算符和关系表达式逻辑运算符和逻辑表.ppt_第1页
第1页 / 共23页
程序的三种结构关系运算符和关系表达式逻辑运算符和逻辑表.ppt_第2页
第2页 / 共23页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,程序的三种结构,关系运算符和关系表达式,逻辑运算符和逻辑表达式,if,语句,三元条件表达式,switch,语句,第五章 选择结构的程序设计,1,一 程序的三种基本结构,结构化程序设计,基本思想:任何程序都可以用三种基本结构表示,限制使用无条件转移语句(,goto,),结构化程序:三种基本结构反复嵌套构成的程序,优点:结构清晰,易读,提高程序设计质量和效率,三种基本结构,顺序结构,A,B,A,B,流程图,N-S,图,2,P,A,B,真,假,P,B,A,真,假,选择结构,k,A1,A2,Ai,An,k=k2,k=k1,k=,kn,k=,ki,.,.,二分支选择结构,多分支选择结构,3,循环结构,当型循环结构,直到型循环结构,P,A,假,真,当,P,为真,A,A,P,真,假,A,直到,P,为真,注:,A,B,A1.An,可以是一个简单语句,也可以是一个基本结构,4,二、关系运算符和关系表达式,1,、关系运算符:,、,、,=,:,优先级高于,=,、,!=,例如:,C a+b,即,C (a+b),说明,:算术运算符的优先级高于关系运算符,a=bc,即,a=(bc,即,a=(bc),2,、,关系表达式的值:,0 1,3,、运算符的优先级和结合规则参见教材附录,5,三、逻辑运算符和逻辑表达式,1,、逻辑运算符:,&,:与,|,:或,!,:非(注意:三个运算符之间的优先级),注意特例,:,!0 !2 2|3 2&3,2,、逻辑表达式举例:,判断一年为润年的条件是:,年数可以被,4,整除但不能被,100,整除,或者,年数可以被,400,整除,。,(year%4=0&year%100!=0)|(year%400=0),例如:判断,2005,年和,2008,年。,6,四、选择型程序设计,if,语句,(条件选择语句),if,语句的三种形式,形式一:,格式:,if(expression),statement,执行过程:,expr,statement,非,0,=0,例:,if(xy),printf(“%d”,x,);,expr,statement1,statement2,非0,=0,形式二,:,格式,:,if(expression),statement1,else,statement2,执行过程:,例:,if(xy)max=x;,else max=y;,7,形式三:,格式:,if(expr1)statement1,else if(expr2)statement2,else if(expr3)statement3,.,else statement n ,expr1,statemnt1,非,0,=0,expr2,expr3,statemntn,statemnt3,statemnt2,非,0,非,0,=0,=0,执行过程:,例:,if(salary1000)index=0.4;,else if(salary800)index=0.3;,else if(salary600)index=0.2;,else if(salary400)index=0.1;,else index=0;,8,再看一个例子:根据学生的成绩百分制划分为优、良、中、及格、不及格等级。,main(),int,score;,char grade;,scanf(%d,&score,);,if(score=90),grade=A;,else if(score=80),grade=B;,else if(score=70),grade=C;,else if(score=60),grade=D;,else,grade=E;,printf(%d,:%cn,score,grade);,9,如:,if(a=b&x=y),printf(“a,=b,x=y”);,if(3),printf(“OK,”);,if(a),printf(“%d”,a,);,说明:,if,后面的表达式类型任意,语句可以是复合语句,if(x),if(x!=0),if(!x),if(x=0),例 考虑下面程序的输出结果,:,#include,main(),int,x,y;,scanf(“%d,%d”,&x,&y,);,if(xy),x=y;y=x;,else,x+;y+;,printf(“%d,%dn”,x,y,);,Compile Error!,10,嵌套在,if,语句之中。,if(),if(),if(),;,else,;,else,;,else,;,注意:层次关系。,例如:判断下列程序输出的结果,形式四:,11,例:,if(a=b),if(b=c),printf(“a,=b=c”);,else,printf(“a,!=b”);,修改:,if(a=b),if(b=c),printf(“a,=b=c”);,else,printf(“a,!=b”);,实现,if else,正确配对方法:加,12,例 考虑下面程序输出结果,:,main(),int,x=100,a=10,b=20;,int,v1=5,v2=0;,if(a0),if(a0),z=a;,else,z=b;,printf(%d,n,z);,若把上面的,if,语句该为下列形式,输出又是多少:,14,if(n0),if(a0),z=a;,else,z=b;,if(n0),if(a0),z=a;,else,z=b;,理解括号改变嵌套关系。,自己,修改“学生成绩百分制”成为语句格式,4,的形式。,15,五、三元条件表达式,表达式,1?,表达式,2:,表达式,3,-,等价于,-,if(,表达式,1),表达式,2;,else,表达式,3;,16,例,1,:,if(x y),z=x;,else,z=y;,等价于,:z=(x=A&,ch,60n”);,break;,.,19,例,switch(score),case 5:,printf(“Very,good!”);,case 4:,printf(“Good,!”);,case 3:,printf(“Pass,!”);,case 2:,printf(“Fail,!”);,default :,printf(“data,error!”);,运行结果:,score,为5时,输出:,Very good!Good!Pass!Fail!data error!,20,例,void main(),int,x=1,y=0,a=0,b=0;,switch(x),case 1:,switch(y),case 0:a+;break;,case 1:b+;break;,case 2:a+;b+;break;,case 3:a+;b+;,printf(“na,=%d,b=%d”,a,b);,运行结果:,a=2,b=1,21,main()/*,判断程序的输出结果,*,/,char,ch,;,scanf,(%,c,&ch,);,switch(ch,),case a:,printf(a,selcted,!);,break;,case b:,case c:,printf(b,c,selcted,!);,break;,default:,printf(Not,a valid,chioce,!);,break;,22,七、程序举例,判断润年的问题:,main(),int,y,leap;,scanf(%d,&y,);,leap=(y%4=0,printf(n%d,%s,y,leap?leap year:not leap year);,作业:实验,2,23,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服