学生成绩管理系统-java-版
![学生成绩管理系统-java-版](https://img.360docs.net/img6a/1cfe748vrj8n812qh3j4k870wy3knrau-a1.webp)
![学生成绩管理系统-java-版](https://img.360docs.net/img6a/1cfe748vrj8n812qh3j4k870wy3knrau-62.webp)
//这个程序,可以完成基本的学生成绩管理,可以对学生增加,删除和按平均分排序等基本操作//希望下载的朋友们可以看懂,学到一点知识~~~
package Student;
public class Student {
private String id; // 学号
private String name; // 姓名
private int engl; // 英语成绩
private int math; // 数学成绩
private int comp; // 计算机成绩
private double aver; // 平均分
private Student students[]; // 学生
public static int size = 0; // 人数
Student() {
};
Student(String id, String name, int engl, int math, int comp) { size++;
this.id = id;
https://www.360docs.net/doc/6912308208.html, = name;
this.engl = engl;
this.math = math;
https://www.360docs.net/doc/6912308208.html,p = comp;
aver = average();
}
public Student(Student s) {
this.id = s.id;
https://www.360docs.net/doc/6912308208.html, = new String(https://www.360docs.net/doc/6912308208.html,);
this.engl = s.engl;
this.math = s.math;
https://www.360docs.net/doc/6912308208.html,p = https://www.360docs.net/doc/6912308208.html,p;
this.aver = s.average();
}
public void insertsort() { // 按平均分排序
Student temp = new Student();
for (int i = 0; i < size; i++)
for (int j = 0; j < size - i - 1; j++) {
if (students[j].aver > students[j + 1].aver) {
temp = students[j];
students[j] = students[j + 1];
students[j + 1] = temp;
}
}
}
public Student[] getStudents() {
return students;
}
public boolean addStudent(Student addstudent) { //增加学生// this.students=new Student[size];
boolean flag=false;
for(int i=0;i if(addstudent.id.equals(students[i].id)) flag=true; break; } if(flag==false) { students[size - 1] = addstudent; return true; } else return false; } public boolean subStudent(String id) { //按学号删除学生int i; for (i = 0; i < size; i++) { if (id.equals(students[i].id)) break; else return false; } int top = i; for (int j = top + 1; j < size; j++) { students[j - 1] = students[j]; } size--; return true; } public void setStudents(Student[] students) { this.students = new Student[100]; for (int i = 0; i < size; i++) this.students[i] = new Student(students[i]); } double average() { return (engl + math + comp) / 3; } String getId() { return id; } String getName() { return name; } int getEnglish() { return engl; } int getMath() { return math; } int getComputer() { return comp; } double getAverage() { return aver; } int getSize() { return size; } public void fanilize() { size--; } public String toString() { String s; s = " "+ "学号"+ "\t"+ "姓名"+ "\t"+ "英语"+ "\t"+ "数学" + "\t" + "计算机" + "\t" + "平均分\n"; for (int i = 0; i < size; i++) s = s + " "+ students[i].getId() + "\t"+ students[i].getName() + "\t " + students[i].getEnglish() + "\t" + students[i].getMath() + "\t" + students[i].getComputer() + "\t" + students[i].getAverage() + "\n"; return s; } } package Student; import java.util.*; public class textStudent { /** *@param args */ public static void main(String[] args) { // TODO Auto-generated method stub // ArrayList /* * Student students[]; students = new Student[5]; int i; for (i = 0; i < * 5; i++) { students[i] = new Student(getAStudent(i + 1)); } Student * stu = new Student(); stu.setStudents(students); * System.out.print(stu); * * System.out.print("增加学生"); Student student1[]=new Student[i+1]; * for(int j=0;j<5;j++){ student1[j]=students[j]; }; student1[i]=new * Student(getAStudent(i+1)); stu.setStudents(student1); * System.out.println("添加成功"); */ Student students[]; students = new Student[3]; int i; for (i = 0; i < 3; i++) { students[i] = new Student(getAStudent(i + 1)); } Student stu = new Student(); stu.setStudents(students); int n; Scanner Keyboard = new Scanner(System.in); //System.clear(); do { menu(); System.out.println("请选择操作"); n = Keyboard.nextInt(); System.out.println("\n"); switch (n) { case 1: System.out.println("增加学生"); if(stu.addStudent(getAStudent(++i))) System.out.print("\n添加成功"); else { System.out.print("已经有此学号了,添加失败"); i--; } break; case 2: System.out.print("输入要删除的学生学号:"); String str=Keyboard.next(); if(stu.subStudent(str)) { System.out.println("删除成功"); i--; } else{ System.out.print("没有找到,删除失败\\a"); } break; case 3: System.out.println("所有学生的信息:" + "共" + Student.size + "人"); System.out.println(stu); break; case 4: System.out.print("按平均分排序,"); stu.insertsort(); System.out.println("排序后的结果:"); System.out.print(stu); break; case 0: System.out.println("成功退出"); break; default: System.out.println("输入错误,请从新输入"); break; } } while (n != 0); } static Student getAStudent(int i) { Scanner Keyboard = new Scanner(System.in); Student studenti; System.out.println("输入第" + i + "个学生的信息:"); System.out.print("学号:"); String id = Keyboard.next(); System.out.print("姓名:"); String name = Keyboard.next(); System.out.print("英语成绩:"); int eng = Keyboard.nextInt(); System.out.print("数学成绩:"); int math = Keyboard.nextInt(); System.out.print("计算机成绩:"); int comp = Keyboard.nextInt(); studenti = new Student(id, name, eng, math, comp); return studenti; } static void menu() { System.out.println("\n"); System.out.println("1.增加学生"); System.out.println("2.删除学生"); System.out.println("3.显示所有学生的信息"); System.out.println("4.按平均分排序"); System.out.println("0.退出"); } }