第 10天: 综合任务 1
对于break和continue:break的作用是跳出当前循环块(for、while、do while)或程序块(switch)。在循环块中的作用是跳出当前正在循环的循环体。在程序块中的作用是中断和下一个case条件的比较。
continue用于结束循环体中其后语句的执行,并跳回循环程序块的开头执行下一次循环,而不是立刻中断该循环体。
- 当循环执行到break语句时,就退出整个循环,然后执行循环外的语句。
-
当循环语句执行到continue时,当次循环结束,重新开始下一轮循环。如果已经是最后一轮循环了,那么这是的continue就与break效果一样。
-
第一步就是随机生成数组,三个数为一组生成十组并且设置最高分和最低分以及及格分。
该方法的作用是生成一个随机的int值,该值介于[0,n)的区间,也就是0到n之间的随机int值,包含0而不包含n。
第二步就是要进行总分计算,按规则一共三科,如果遇到某一科没有及格就直接将totalScores[]设为0并且直接用break跳出这一层的for循环,都及格的话就对各科分数进行累加。
第三步第四步之后对分数进行排序分类,然后打印输出
当时对continue不够了解,认为不要continue也可以按规则完成
但是这样一来最差学生就是没有剔除不及格的学生,而是将三科相加总分最低的学生成绩打印出来了。
程序bug:如果只有某一个学生每一科都过关60分,那么他既是最好成绩的学生也是最坏成绩的学生,这显然不合理,只能是最好的学生,因为没及格的没有成绩,肯定不如他。如图