实验4-循环程序设计doc

实验4-循环程序设计doc

ID:28370137

大小:100.00 KB

页数:14页

时间:2018-12-09

实验4-循环程序设计doc_第1页
实验4-循环程序设计doc_第2页
实验4-循环程序设计doc_第3页
实验4-循环程序设计doc_第4页
实验4-循环程序设计doc_第5页
资源描述:

《实验4-循环程序设计doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验4 循环程序设计4.1实验目的(1)掌握三种循环语句的使用,能分析循环的执行过程;(2)掌握break和continue语句的使用;(3)了解如何利用求余和整除操作获取和删除一个整数的最低位;(4)掌握累加、累乘的处理方法。(5)掌握计数问题的编写技巧,如何控制每行输出元素个数。4.2知识要点   循环就是反复执行一段代码,直到满足结束条件。循环语句一般包括初始化、循环体、迭代和判断4部分。4.2.1while循环与dowhile循环的使用差异while语句的格式:  while(条件表达式){     循环

2、体    }特点是“先判断、后执行”,循环体有可能执行0次。do…while循环的格式:   do{        循环体    }while(条件表达式)特点是“先执行,后判断”,循环体至少要执行1次。建议:在程序设计中尽量不用dowhile循环,而用while循环。4.2.2for循环与while循环的对应关系for(控制变量赋初值;循环条件;增值){循环体}等价于:控制变量赋初值;While(循环条件){循环体;控制变量增值;}注意几点:(1)for循环的执行过程是先做初始化,然后判断是否满足结束条件,若满

3、足,则执行循环体,在执行完循环体后进行迭代增值。(2)初始化部分和增值部分可以使用逗号语句执行多个操作;(3)三部分均为空,写成for(;;)相当于一个无限循环。4.2.3continue和break语句的作用l        continue---跳过之后的语句,继续下一轮循环;l        break---跳出直接所处循环。l        带标号的continue可以回到标号指定的那级循环的下一轮执行。l        带标号的break可以跳出标号指定的那级循环。4.2.4常见问题处理(1)累加问题的

4、解决办法—累加变量的初值设置在循环外,通常赋0为初值;(2)如何利用循环求阶乘—累乘,在循环外设置变量初值为1;(3)如何控制每行的输出数据个数(计数问题);(4)如何产生一定范围的随机整数。Math.random()产生的数是0到1之间的小数,不包括0和1,要产生随机整数必须先放大再取整。4.3样例程序样例1:输入一批学生成绩,以-1作为结束标记    (1)统计这批学生中,不及格、及格、中等、良好、优秀的人数。  (2)求这批学生的平均分。【分析】根据要求不难看出这是一个计数和累加问题。学生数量不确定,但有一

5、个结束标记(-1),该问题从总体结构是一个循环处理问题,可采用while循环,当输入数据为-1时结束循环。为了统计各种情况的人数,需要设立相应的计数变量,并给其赋初值0,另外为了求平均分,必须计算总分,也就是计算出所有学生成绩的累加和,然后除总人数即可得到平均。【参考程序】importjava.io.*;publicclassScore{ publicstaticvoidmain(Stringargs[])throwsIOException{    ints=0,b=0,c=0,d=0,e=0,f=0; //变量

6、赋初值    BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));    inta=Integer.parseInt(br.readLine()); //读取一个整数    while(a!=-1){      s+=a; //累加      switch(a/10){        case 0:        case 1:        case 2:        case 3:        case 4:       

7、 case 5:b++;break;//计数增1        case 6:c++;break;        case 7:d++;break;        case 8:e++;break;        case 9:f++;break;      }     a=Integer.parseInt(br.readLine());   }   System.out.println("优秀人数:"+f);   System.out.println("良好人数:"+e);   System.out.print

8、ln("中等人数:"+d);   System.out.println("及格人数:"+c);   System.out.println("不及格人数:"+b);   intaverage=s/(b+c+d+e+f);    //求平均成绩   System.out.println("平均分="+average);  }}【说明】程序流图见图4-1,程序总体结构上是一个循

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。