求班级平均成绩

package show;

import java.util.Scanner;

/*

* 功能:根据用户输入的班级数、班级人数、班级里每位学生的成绩;分别计算各个班级的平均分数并将其输出。

*/

public class One {

public static void main(String[] args) {

Scanner input =new Scanner(System.in);

System.out.println("输入班级数:");

int classNum = input.nextInt();//输入班级数

double sum = 0;//每个班级的总成绩

for(int i = 1; i <= classNum; i++){//遍历班级

System.out.println("输入第"+ i +"个班级的学生人数:");

int stuNum = input.nextInt();//输入每个班级的学生人数

System.out.println("分别输入他们的成绩:");

for(int j = 1; j <= stuNum; j++){//遍历每个班级的学生人数输入每位学生的成绩

double score = input.nextDouble();//输入每位学生的成绩

sum += score;//对每位学生的成绩进行累加

}

System.out.println("第"+ i +"个班级的平均分为:");

double averScore = (sum/stuNum) ;//求每个班级的平均成绩

System.out.println(averScore);

sum = 0;//总成绩清零,对下一个班级的成绩重新进行累加

}

}

}

bug1: score设为int值却输入带有小数点的值。

solution:将score的类型改为double。


bug2:把score改为double类型后未改为.nextDouble。

solution:将nextInt()改为nextDouble(),int类型对应nextInt(),double类型对应                                    nextDouble();


bug3:未把sum清零,导致累加入下一个班级的总成绩里。

solution: 在每次循环后添加sum = 0; 将sum归零。


PS: 由于averScore和score为块级作用域里的变量,因此不必清零。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章 初识javaJAVA 第一讲:什么是程序?:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的...
    人子日月几点阅读 3,526评论 0 1
  • 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔...
    叶总韩阅读 10,534评论 0 41
  • Java经典问题算法大全 /*【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子...
    赵宇_阿特奇阅读 5,938评论 0 2
  • 1 顺序语句 语句:使用分号分隔的代码称作为一个语句。 注意:没有写任何代码只是一个分号的时候,也是一条语句,...
    哈哈哎呦喂阅读 3,047评论 0 0
  • 文/风萧蓝黛 男人推开门走出来,日光逐渐变得强烈,云朵密密绵绵地移动,空气里飘来了混合的花香,细细一闻,像家里的那...
    风萧蓝黛阅读 5,305评论 4 8