华恩JAVA班第9天
今天自学数组后;编了一个学生成绩管理系统
注意点:
1.人数确定学生姓名长度。
2.姓名是String类型
3.一维数组,二维数组的定义:
一维:int a[] = new int[5];int a[] = {1,2,3};
二维:int a[][] = new int[5][6];
java中多维数组的声明和初始化一样,应按从高维到低维的顺序进行。
4.for循环的控制
5.选择排序的理解与使用
public class Test3 {
public static void main(String[] args){
int a[] ={33,44,22,11,55,66,88,99,77,0};
for(int i = 0;i< a.length-1 ;i++){
for(int j = 0; j < a.length-1 ;j++ ){
if(a[j]> a[j+1]){
intt = a[j];
a[j]= a[j+1];
a[j+1]= t;
}
}
}
for(int i = 0;i< a.length ;i++){
System.out.println(a[i]);
}
}
}
源代码:
import java.util.*;
public class Test {
public static void main(String[] args){
Scanner in = newScanner(System.in);
System.out.println("请输入学生的人数:");
int student =in.nextInt(); //存储学生人数
System.out.println("请输入课程数目:");
int lesson =in.nextInt(); //课程数目
String name[] = newString[student];//学生姓名
String course[] = newString[lesson];//分数
int sum[] = newint[student]; //成绩的和
int avg[] = newint[student]; //平均成绩
int score[][] = newint[student][lesson];
String str[] = newString[student];
for(int i = 0;i< lesson ;i++){
System.out.println("请定义第"+(i+1)+"门课是什么");
course[i] =in.next(); //录入课程名称
}
for(int i = 0;i< student ;i++){
System.out.println("请输入第"+(i+1)+"个学生的姓名");
name[i] =in.next(); //录入学生名字
Stringstr11="";
for(int j =0;j < lesson;j++){
System.out.println("请输入"+name[i]+"的"+course[j]+"成绩");
score[i][j]= in.nextInt(); //录入特定学生各科成绩
sum[i]+= score[i][j]; //算出某个学生的总成绩
str11+= score[i][j]+"\t";
}
avg[i]=sum[i] / lesson; //平均成绩
str[i] =name[i]+"\t"+str11+sum[i]+"\t"+avg[i];
}
System.out.print("学生\t");
for(int i = 0 ; i< lesson;i++){
System.out.print(course[i]+"\t");//循环输出学生成绩
}
System.out.println("总分\t"+"平均分\t"+"排行榜");
for(int i = 0 ; i<student-1;i++){ //选着排序
for(int j =i+1 ; j < student;j++){
if(sum[i]< sum[j]){
Stringt2 = str[i];
str[i]= str[j];
str[j]=t2; //从大到小排序
}
}
}
for(int i =0;i <student;i++){
System.out.println(str[i]+"\t"+"第"+(i+1)+"名");//输出名次
}
}
}
输入输出: