题目要求
一、动态数组简单练习题
1.通过数组存放学生个数以及其科目成绩等信息
2.计算每个学生的总成绩以及平均分
3.统计出每个学生不及格科目的数量
二、具体代码如下
package Student;
import java.util.Scanner;
public class Dome1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生的个数");
int student = sc.nextInt();
System.out.println("请输入科目的数量:");
int courseNum = sc.nextInt();
String course[] = new String[courseNum]; //course数组用来存放科目的名称
for(int i=0;i<courseNum;i++) //这个for循环是用来输入科目名称用的
{
System.out.println("输入第"+(i+1)+"个科目的名称");
course[i] = sc.next();
}
double grade[][] = new double[student][courseNum];//定义一个二维数组来存放学生的成绩
for (int i = 0; i < grade.length; i++) //输入学生的成绩
{
System.out.println("输入第"+(i+1)+"位同学的成绩:");
for (int j = 0; j < grade[i].length; j++)
{
System.out.println("输入第"+(i+1)+"位同学的"+course[j]+"成绩:");
grade[i][j]=sc.nextInt();
}
}
double total=0; //表示总成绩
for (int i = 0; i < grade.length; i++) //输出学生的成绩
{
total=0;
System.out.println("第"+(i+1)+"位同学的成绩:");
for (int j = 0; j < grade[i].length; j++)
{
System.out.print(course[j]+"\t");
System.out.println(grade[i][j]+"\t");
total+=grade[i][j];
}
System.out.println("总成绩:"+total);
System.out.println("平均分:"+(total/grade[i].length));
}
double fail = 0; //用于统计学生不合格科目的数量
for (int i = 0; i < grade.length; i++)
{
fail=0;
System.out.println("统计第"+(i+1)+"位同学不合格科目的数量:");
for (int j = 0; j < grade[i].length; j++)
{
if(grade[i][j]<60) fail++;
}
System.out.println("不合格科目数:"+fail);
}
}
}
三、输出结果