我该实现分别输出总分的,但是代码实现的是第一次输出总分,第二次输出,把第一次输出的总分也加进去了,怎么办

qq_35545075 2016-07-13 02:41:29
import java.util.*;
public class StudentMark {
public static void main(String[]args){
Scanner in = new Scanner(System.in);
System.out.println("请输入学生人数:");
int Stunum=in.nextInt(); //用来存储学生人数
System.out.println("请输入课程数目:");
int CourseNum=in.nextInt(); //用来存储课程的数目
String[] name=new String[Stunum]; //定义一个String数组用来存储学生姓名
String[] Course=new String[CourseNum];//用来存储学生的成绩的名称
int[][]number=new int[Stunum][CourseNum];//定义一个二维数组

int s=0;//用来存储总分
int[] sum= new int[Stunum];
int avg=0;//用来存储平均分

//循环录入并存储课程的名字
for(int i=0;i<Course.length;i++){
System.out.println("请定义第"+(i+1)+"门课程的名字:");
Course[i]=in.next();
}
//循环录入学生姓名
for(int i=0;i<Stunum;i++){
System.out.println("请输入第"+(i+1)+"个学生的姓名:");
name[i]=in.next();
//循环录入他的各门成绩
for(int j=0;j<CourseNum;j++){
System.out.println("请输入"+name[i]+Course[j]+"成绩");
number[i][j]=in.nextInt();//用来存储特定学生的特定成绩
s=number[i][j]+s;
}
sum[i]=s;
}
System.out.print("学生");
for(int i=0;i<Course.length;i++){//循环输出成绩的名称
System.out.print("\t"+Course[i]);
}
System.out.print("\t总分");
System.out.print("\t平均分");

System.out.print("\t排行榜");
System.out.println();
for(int i=0;i<Stunum;i++){//循环输出学生姓名
System.out.print(name[i]);
for(int j=0; j<CourseNum;j++){//循环输出学生成绩
System.out.print("\t"+number[i][j]);
}
System.out.print("\t"+sum[i]);
System.out.println();
}
}
}
...全文
86 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_35545075 2016-07-13
  • 打赏
  • 举报
回复
非常感谢!!
huihuisweet 2016-07-13
  • 打赏
  • 举报
回复
每个循环体重置一下
icyxing 2016-07-13
  • 打赏
  • 举报
回复

        //循环录入学生姓名
        for (int i = 0; i < Stunum; i++) {
            int s = 0;//用来存储总分
            System.out.println("请输入第" + (i + 1) + "个学生的姓名:");
            name[i] = in.next();
            //循环录入他的各门成绩
            for (int j = 0; j < CourseNum; j++) {
                System.out.println("请输入" + name[i] + Course[j] + "成绩");
                number[i][j] = in.nextInt();//用来存储特定学生的特定成绩
                s = number[i][j] + s;
            }
            sum[i] = s;
        }
注意这里的

            int s = 0;//用来存储总分
这个变量应该在循环里边定义
qq_35545075 2016-07-13
  • 打赏
  • 举报
回复
怎么设置呀?
proworm 2016-07-13
  • 打赏
  • 举报
回复
把分数重置一下嘛

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧