欢迎来到天天文库
浏览记录
ID:48027225
大小:409.01 KB
页数:28页
时间:2020-01-10
《C语言程序设计--循环例子.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C语言程序设计—基础篇第7章简单程序设计之二本章内容提要多分支选择结构—switch语句循环嵌套break语句和continue语句程序举例2021/8/31教学目标在三种基本结构的基础上,结合本章介绍流程控制的其他几个语句:switch语句、break语句和continue语句及循环的嵌套,实现复杂的算法,设计出结构清晰、功能强大的程序,对C语言程序开发设计有比较深刻的认识。2021/8/317.1多分支选择结构程序设计1、语句形式:switch(表达式){case常量1:语句1;case常量2:语句2;case常量
2、3:语句3;.......case常量n:语句n;default:语句n+1;}根据表达式的不同值,选择不同的程序分支,又称开关语句。数值型或字符型常量表达式的值必须互不相同,否则执行时将出现矛盾,即同一个开关值,将对应多种执行方案。千万不能接(;)号2021/8/312、语句执行流程:指语句的最后一条是否为break简单语句或复合语句breakbreak有无break有无有计算表达式常量1常量2常量n=语句1…===语句2语句n其它=语句n+1无值case语句出现的次序并不影响执行结果。2021/8/31voidmai
3、n(){intn;printf("请输入成绩:");scanf("%d",&n);switch((int)(n/10)){case10:printf("成绩%d的等级为优秀",n);case9:printf("成绩%d的等级为优秀",n);case8:printf("成绩%d的等级为良好",n);case7:printf("成绩%d的等级为中等",n);case6:printf("成绩%d的等级为及格",n);default:printf("成绩%d的等级为不及格",n);}}【例7.1】编写程序
4、,对学生成绩进行等级评定。将成绩分为几个等级:0~59分为不及格,60~69分为及格,70~79分为中等,80~89分为良好,90~100分为优秀。要求输入一个成绩,输出其对应的等级。请输入成绩:78↙成绩78的等级为中等成绩78的等级为及格成绩78的等级为不及格出错啦!?2021/8/31在“switch”语句中,“case常量表达式”只相当于一个语句标号,表达式的值和某标号相等则转向该标号执行,但不能在执行完该标号的语句后自动跳出整个switch语句,因此会继续执行所有后面语句的情况。为此,C语言提供了一种break
5、语句,其功能是可以跳出它所在的switch语句。2021/8/31将上面的例7.1修改如下:voidmain(){intn;printf("请输入成绩:");scanf("%d",&n);switch((int)(n/10)){case10:printf("成绩%d的等级为优秀",n);break;case9:printf("成绩%d的等级为优秀",n);break;case8:printf("成绩%d的等级为良好",n);break;case7:printf("成绩%d的等级为中等",n);break;
6、case6:printf("成绩%d的等级为及格",n);break;default:printf("成绩%d的等级为不及格",n);}}请输入成绩:78↙成绩78的等级为中等2021/8/31使用switch语句时还应注意以下几点switch后面圆括号内表达式的值和case语句中常量表达式的值,都必须是整型的、枚举型的或字符型的,不允许是浮点型的。在case后的各常量表达式的值不能相同。每个case子句既可以是一条语句,也可以是多条语句。当是多条语句时,不需要用花括号括起来。各个case子句和default子句
7、的先后顺序可以变动,而不会影响程序执行结果。default子句可以省略不用。多个case的后面可以共用一组执行语句。如例7.1中等级为优秀的判断程序可改为:2021/8/31switch((int)(n/10)){case10:case9:printf("成绩%d的等级为优秀");break;…}2021/8/317.2嵌套循环结构程序设计在一个循环内又完整地包含另一个循环,称为循环的嵌套。for语句可以与while语句、do-while语句相互嵌套,构成多重循环,例如:2021/8/31(1)(2)for()do{
8、{……while()for(){…}{…}……}}while();(3)(4)while()for(){{……for()for(){…}{……}}…}2021/8/31for(i=1;i<=9;i++){打印第i行;}【例7.2】打印乘法小九九表。使用一个循环9次的循环语句,每次循环打印一行:打印第i行,循环i次,每
此文档下载收益归作者所有