C语言之选择结构程序设计.pptx
《C语言之选择结构程序设计.pptx》由会员分享,可在线阅读,更多相关《C语言之选择结构程序设计.pptx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章选择结构程序设计第五章选择结构程序设计教学目标与要求:掌握关系运算符和关系表达式和逻辑运算符和逻辑表达式。掌握关系运算符和关系表达式和逻辑运算符和逻辑表达式。能够熟练掌握和运用能够熟练掌握和运用if if 语句、语句、switch switch 语句,能设计出具有判断能力的程序,重点学会语句,能设计出具有判断能力的程序,重点学会设计程序的算法。设计程序的算法。第1页/共45页 单分支、双分支、多分支 选择其一 例:if(xy)z=x;else z=y;例:if(xy&xz)max=x;第2页/共45页 5.1 5.1 关系运算符与关系表达式关系运算符与关系表达式 1 1、关系运算符、关系
2、运算符 假值用0表示,非0都为真;关系运算符与优先级:=(高)=!=(低)结合性:左到右第3页/共45页2 2、关系表达式、关系表达式 赋值运算 关系运算 算术运算(高)例:ca+b 等价于 c(a+b)a=bc等价于 a=(bc)第4页/共45页 5.2 5.2 逻辑运算符与逻辑表达式逻辑运算符与逻辑表达式 1 1、逻辑运算符:、逻辑运算符:&逻辑与|逻辑或 !逻辑非(单目运算)2 2、优先级、优先级 逻辑非 高 算术运算 关系运算&和|赋值运算 低例:(ab)&(xy)等效 ab&xy第5页/共45页 3 3、逻辑运算符的运算规律、逻辑运算符的运算规律ab!aa&ba|b真真真真假假真真真
3、真真真假假假假假假真真假假真真真真假假真真假假假假真真假假假假第6页/共45页例:条件:30 x=50表达为:x30例:条件:字符 c是小写字母表达为:c=a第7页/共45页 5.3 if5.3 if语句语句1 1、格式、格式(1)格式一:if(if(表达式表达式)语句语句1 1 else else 语句语句2 2 说明:if、else语句后语句可是复合语句,要用用 。第8页/共45页例1:a、b两个数,输出较大数。例2:a、b两个数,按由小到大次序输出。练习:编程求x绝对值 第9页/共45页源程序:void main()float a,b,t;scanf(%f,%f,&a,&b);if(ab
4、)printf(a=%f,b=%fn,a,b);t=a;a=b;b=t;第10页/共45页(2)格式二 if(if(表达式表达式1)1)语句语句1 1 else if(else if(表达式表达式2)2)语句语句2 2 else if(else if(表达式表达式3)3)语句语句3 3 else else 语句语句n n第11页/共45页#include#include void main()void main()int score;int score;scanf(%d,&score);scanf(%d,&score);if(score=90)if(score=90)printf(score=
5、%d A printf(score=%d A等等n,score);n,score);else if(score=80)else if(score=80)printf printf(score=%d Bscore=%d B等等n,score);n,score);else if(score=70)else if(score=70)printf(score=%d C printf(score=%d C等等n,score);n,score);else if(score=60)else if(score=60)printf(score=%d D printf(score=%d D等等n,score);n
6、,score);else printf(score=%d E else printf(score=%d E等等n,score);n,score);例3 3:学生成绩分等级。90-100“A”,80-89 90-100“A”,80-89“B”,70-79“C”,60-“B”,70-79“C”,60-69“D”,0-60“E”.69“D”,0-60“E”.C5_cjfd.cC5_cjfd.c第12页/共45页 2、if 语句的嵌套 if()if()if()if()语句语句1 1 else else 语句语句2 2 else else if()if()语句语句3 3 else else 语句语句4
7、4 说明:多个嵌套的结果,else存在匹配的问题:else 总是与最近的尚未匹配的 if 匹配。如if和else 数目不同,可用确定配对关系。第13页/共45页程序1:void main()float x,y;scanf(“%f”,&x);if(x0)y=-1;else if(x=0)y=0;else y=1;printf(“x=%f y=%fn”,x,y);例例4 4:有一函数:有一函数:-1 (x0)-1 (x0)输入任意x,求y.第14页/共45页 -1 (x0)-1 (x0)程序2:void main()float x,y;scanf(“%f”,&x);if(x=0)if(x0)y=1
8、;else y=0;else y=-1;printf(“x=%f y=%fn”,x,y);第15页/共45页 -1 (x0)-1 (x0)程序3:void main()float x,y;scanf(“%f”,&x);y=-1;if(x!=0)if(x0)y=1;else y=0;printf(“x=%f y=%fn”,x,y);第16页/共45页练习:给一个不多于5位的正整数,判断是几位数。xt5_7.c第17页/共45页参考代码:void main()int num,place;printf(请输入一个整数(0-99999);scanf(%d,&num);第18页/共45页if(num99
9、99)place=5;else if(num999)place=4;else if(num99)place=3;else if(num9)place=2;else place=1;printf(place=%dn,place);第19页/共45页3、条件运算符 ifif语句中,表达式真假时,都给同一语句中,表达式真假时,都给同一变量赋值,可用条件运算符。变量赋值,可用条件运算符。格式为:表达式1?表达式2:表达式3例:if(ab)max=a;else max=b;可改为:max=(ab)?a:b第20页/共45页说明:说明:先求表达式先求表达式1 1,如果满足,则计算,如果满足,则计算表达式表
10、达式2 2;否则,计算表达式;否则,计算表达式3 3;条件运算优于赋值运算条件运算优于赋值运算第21页/共45页复习:if:if语句格式:格式一格式一:if(:if(表达式表达式)语句语句1 1 else else 语句语句2 2 格式二格式二:if(if(表达式表达式1)1)语句语句1 1 else if(else if(表达式表达式2)2)语句语句2 2 else if(else if(表达式表达式3)3)语句语句3 3 else else 语句语句n n第22页/共45页#include void main()char c;c=getchar();练习:判断由键盘输入的字符是数字、大写字
11、母、小写字母、空格还是其他字符。第23页/共45页if(c=0)printf(%c 是字符!n,c);else if(ca)printf(%c 是小写字母!n,c);else if(cA)printf(%c 是大写字母!n,c);else if(c=)printf(%c 是空格!n,c);else printf(%c 是其他!n,c);第24页/共45页 5.4 5.4 多分支语句多分支语句 switchswitch格式:switch(switch(表达式)case case 常量表达式1:1:语句1 1;case case 常量表达式2:2:语句2 2;case case 常量表达式n:n:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 选择 结构 程序设计
限制150内