用Java编写这道题,并叙述一下分析思路,谢谢啦我是个Java初学者麻烦了!

编写一控制台程序:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,从屏幕输出。

····这题工作量有点多···过会再来,来了
import java.util.Scanner;
public class Student {
/**
* @param args
*/
private static String[] sname;// 姓名
private static String[] sno;// 学号
private static double[] grade_1;// 三门成绩
private static double[] grade_2;
private static double[] grade_3;
private static double[] avggrade;// 平均成绩
public static void main(String[] args) {
// TODO Auto-generated method stub
// 用数组来存储数据,5个学生
sname = new String[5];
sno = new String[5];
grade_1 = new double[5];
grade_2 = new double[5];
grade_3 = new double[5];
avggrade = new double[5];
Scanner sc = new Scanner(System.in);
// 利用 for循环输入成绩
for (int j = 0; j < sname.length; j++) {
System.out.println("输入学生姓名:");
sname[j] = sc.next();
System.out.println("输入学生学号:");
sno[j] = sc.next();
System.out.println("输入成绩一:");
grade_1[j] = sc.nextDouble();
System.out.println("输入成绩二:");
grade_2[j] = sc.nextDouble();
System.out.println("输入成绩三:");
grade_3[j] = sc.nextDouble();
}
//for循环输出
for (int j = 0; j < sname.length; j++) {
avggrade[j] = (grade_1[j] + grade_2[j] + grade_3[j]) / 3;
System.out.println("学生:" + sname[j] + "学号:" + sno[j]);
System.out.println("成绩一:" + grade_1[j]);
System.out.println("成绩二:" + grade_2[j]);
System.out.println("成绩三:" + grade_3[j]);
System.out.println("平均成绩:" + avggrade[j]);
}
}
}
结果:
输入学生姓名:
1
输入学生学号:
2
输入成绩一:
1
输入成绩二:
3
输入成绩三:
2
输入学生姓名:
1
输入学生学号:
23
输入成绩一:

21
输入成绩二:
3
1输入成绩三:

输入学生姓名:
2
输入学生学号:
23
输入成绩一:
1
23输入成绩二:

输入成绩三:
123
输入学生姓名:

23
输入学生学号:
123
输入成绩一:
21
输入成绩二:

2
输入成绩三:
12
输入学生姓名:

123
输入学生学号:

34
输入成绩一:
1
输入成绩二:

12
3输入成绩三:

学生:1学号:2
成绩一:1.0
成绩二:3.0
成绩三:2.0
平均成绩:2.0
学生:1学号:23
成绩一:21.0
成绩二:3.0
成绩三:1.0
平均成绩:8.333333333333334
学生:2学号:23
成绩一:1.0
成绩二:23.0
成绩三:123.0
平均成绩:49.0
学生:23学号:123
成绩一:21.0
成绩二:2.0
成绩三:12.0
平均成绩:11.666666666666666
学生:123学号:34
成绩一:1.0
成绩二:12.0
成绩三:3.0
平均成绩:5.333333333333333
平均成绩直接百度 保留几个小数位

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-04-19
/* 题目:有五个学生,每个学生有3门课的成绩,
 * 从键盘输入以上数据(包括学号,姓名,三门课成绩),
 * 计算出平均成绩,从屏幕输出。
 */
package demo;
import java.util.Scanner;
//利用2维数组
public class textdemo {

public static void main(String[] args) {
// 创建键盘输入
Scanner ss = new Scanner(System.in);
// 创建2维数组,分别存放学号,姓名,三门课成绩和平均成绩
String[][] studentmessage = new String[5][6];

// 利用for循环,循环输入每个人的学号,姓名,三门课成绩
for (int i = 0; i < studentmessage.length; i++) {
System.out.println("请输入第" + (i + 1) + "个学生的学号:");
studentmessage[i][0] = ss.nextLine();
System.out.println("请输入第" + (i + 1) + "个学生的姓名:");
studentmessage[i][1] = ss.nextLine();
for (int j = 1; j <= 3; j++) {
System.out.println("请输入该学生的第" + j + "个成绩:");
studentmessage[i][j + 1] = ss.nextLine();
}
}

// 调用系统函数求平均值
double avg;// 平均值
double sum;// 3个成绩总和
for (int i = 0; i < studentmessage.length; i++) {
// 循环使用,节约资源
sum = 0;
for (int j = 2; j < studentmessage.length; j++) {
sum = sum + Integer.parseInt(studentmessage[i][j]);
}
// 求3个成绩总和的平均值
avg = sum / 3;
// 将平均值存放到2维数组的最后一个中
studentmessage[i][5] = String.valueOf(avg);
}

if (studentmessage != null) {
// 循环输出即可
for (int i = 0; i < studentmessage.length; i++) {
System.out.println("第" + (i + 1) + "个学生的姓名:"
+ studentmessage[i][1] + ";");
System.out.println("第" + (i + 1) + "个学生的学号:"
+ studentmessage[i][0] + ";");
System.out.println("该学生的三门成绩分别是:" + studentmessage[i][2] + ","
+ studentmessage[i][3] + "," + studentmessage[i][4]
+ ";");
System.out.println("该学生三门成绩的平均分是:" + studentmessage[i][5]);
System.out.println("————————分割线————————");
}
}

}
}