您好,欢迎来到华佗养生网。
搜索
您的当前位置:首页JAVA学生管理系统源代码

JAVA学生管理系统源代码

来源:华佗养生网


JAVA学生管理系统源代码

一、程序

import java.util.*;

public class Test {//主程序

public static void main(String[] args){

Scanner in = new Scanner(System.in);

System.out.println(\"------请定义学生的人数:------\");

Student[] stuArr = new Student[in.nextInt()];

Admin adminStu = new Admin();

while(true){

System.out.println(\"-----请选择你要执行的功能-----\");

System.out.println(\"10:添加一个学生\");

System.out.println(\"11:查找一个学生\");

1 / 25

System.out.println(\"12:根据学生编号更新学生基本信息\");

System.out.println(\"13:根据学生编号删除学生\");

System.out.println(\"14:根据编号输入学生各门成绩\");

System.out.println(\"15:根据某门成绩进行排序\");

System.out.println(\"16:根据总分进行排序\");

System.out.println(\"99:退出系统\");

String number = in.next();

if(number.equals(\"10\")){

System.out.println(\"请输入学生的编号:\");

int num = in.nextInt();

System.out.println(\"请输入学生的姓名:\");

String name = in.next();

System.out.println(\"请输入学生的年龄:\");

2 / 25

int age = in.nextInt();

adminStu.Create(num,name,age,stuArr);//添加学生

}else if(number.equals(\"11\")){

System.out.println(\"执行查找学生基本信息的操作\");

System.out.println(\"请输入学生的编号进行查找:\");

int num = in.nextInt();

adminStu.find(num,stuArr);//查找学生

}else if(number.equals(\"12\")){

System.out.println(\"执行更新学员的基本信息操作\");

System.out.println(\"请输入学生的编号:\");

int num = in.nextInt();

System.out.println(\"请输入学生的姓名:\");

String name = in.next();

3 / 25

System.out.println(\"请输入学生的年龄:\");

int age = in.nextInt();

adminStu.update(num,name,age,stuArr);//更新学生基本信息

}else if(number.equals(\"13\")){

System.out.println(\"执行删除学生操作\");

System.out.println(\"请输入学生编号:\");

int num = in.nextInt();

adminStu.delete(num,stuArr);//删除学生

}else if(number.equals(\"14\")){

System.out.println(\"执行输入成绩操作\");

System.out.println(\"请输入学生编号:\");

int num = in.nextInt();

adminStu.input(num, stuArr);//输入成绩

4 / 25

}else if(number.equals(\"15\")){

System.out.println(\"执行根据某科目成绩排序操作\");

System.out.println(\"请选择需要排序的科目名(1.java 2.C# 3.html 4.sql):\");

int num = in.nextInt();

adminStu.courseSort(num,stuArr);//按科目排序

}else if(number.equals(\"16\")){

System.out.println(\"执行根据总分排序操作\");

adminStu.sumSort(stuArr);//按总分排序

}else if(number.equals(\"99\")){

System.out.println(\"--------程序已退出--------\");

//break;

System.exit(0);

}

5 / 25

}

}

}

二、学生类

public class Student {//学生类

private int num;

private String name;

private int age;

private int java;

private int C;

private int html;

private int sql;

private int sum;

6 / 25

private int avg;

public int getNum() {

return num;

}

public void setNum(int num) {

this.num = num;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

7 / 25

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public int getJava() {

return java;

}

public void setJava(int java) {this.java = java;

}

8 / 25

public int getC() {

return C;

}

public void setC(int c) {

C = c;

}

public int getHtml() {

return html;

}

public void setHtml(int html) {

this.html = html;

}

public int getSql() {

9 / 25

return sql;

}

public void setSql(int sql) {

this.sql = sql;

}

public int getSum() {

return sum;

}

public void setSum() {

this.sum = this.java+this.C+this.html+this.sql;

}

public int getAvg() {

return avg;

10 / 25

}

public void setAvg() {

this.avg = this.sum/4;

}

public String toString(){

String str = \"\\t\"+this.num+\"\\t\"+this.name+\"\\t\"+this.age+\"\\t\"

+this.java+\"\\t\"+this.C+\"\\t\"+this.html+\"\\t\"+this.sql

+\"\\t\"+this.sum+\"\\t\"+this.avg;

return str;

}

}

三、管理学生类

import java.util.*;

11 / 25

public class Admin {//用来管理学生的一个类

String msg = \"\\t编号\\t姓名\\t年龄\\tjava\\tC#\\thtml\\tsql\\t总分\\t平均分\";

public void print(Student[] arr){//刷新数据的方法

System.out.println(msg);

for(int i=0;iif(arr[i]!=null){

arr[i].setSum();

arr[i].setAvg();

System.out.println(arr[i]);

}

}

}

public boolean exist(int num,Student stu){//判断学生是否存在的方法

12 / 25

if(stu!=null){

if(stu.getNum()==num){

return true;

}else{

return false;

}

}

return false;

}

public void Create(int num,String name,int age,Student[] arr){//添加学生的方法

Student stu = new Student();

stu.setNum(num);

stu.setName(name);

13 / 25

stu.setAge(age);

int i = this.setIndex(arr);

if(i==99999){

System.out.println(\"学生人数已添满,不能再添加了\");

}else{

arr[i]=stu;

}

this.print(arr);

}

public int setIndex(Student[] arr){//返回数组为空的下标

for(int i=0;iif(arr[i]==null){

return i;

14 / 25

}

}

return 99999;

}

public void find(int num,Student[] arr){//查询学生的方法

for(int i=0;iif(this.exist(num,arr[i])==true){

System.out.println(msg);

System.out.println(arr[i]);

return;

}

}

System.out.println(\"-----没有这个学生的存在-----\");

15 / 25

}

public void update(int num,String name,int age,Student[] arr){//更新学生基本信息的方法

for(int i=0;iif(this.exist(num, arr[i])==true){

arr[i].setName(name);

arr[i].setAge(age);

System.out.println(\"--------更新学生信息成功!-------\");

this.print(arr);

return;

}

}

System.out.println(\"------没找到这个学生更新信息失败------\");

}

16 / 25

public void delete(int num,Student[] arr){//删除学生的方法

for(int i=0;iif(this.exist(num,arr[i])){

arr[i] = null;

this.print(arr);

return;

}

}

System.out.println(\"您所指定编号的学生不存在\");

}

public void input(int num,Student[] arr){//输入学生成绩的方法

for(int i=0;iif(this.exist(num, arr[i])){

17 / 25

Scanner in = new Scanner(System.in);

System.out.println(\"请输入\"+arr[i].getName()+\"java的成绩:\");

if(in.hasNextInt()){//输入非整形数则不执行

arr[i].setJava(in.nextInt());

}else{

return;

}

System.out.println(\"请输入\"+arr[i].getName()+\"C#的成绩:\");

if(in.hasNextInt()){

arr[i].setC(in.nextInt());

}else{

return;

}

18 / 25

System.out.println(\"请输入\"+arr[i].getName()+\"html的成绩:\");

if(in.hasNextInt()){

arr[i].setHtml(in.nextInt());

}else{

return;

}

System.out.println(\"请输入\"+arr[i].getName()+\"sql的成绩:\");

if(in.hasNextInt()){

arr[i].setSql(in.nextInt());

}else{

return;

}

this.print(arr);

19 / 25

return;

}

}

}

public void courseSort(int num,Student[] arr){//根据指定科目排序的方法

if(num==1){

//这里不能用冒泡排序(因为冒泡排序是相邻的比较,而相邻的可能不存在,那么相隔的两个就不能交换)

for(int i=0;ifor(int j=i+1;jif(arr[i]!=null&&arr[j]!=null){

if(arr[i].getJava()Student t = arr[i];

arr[i] = arr[j];

20 / 25

arr[j] = t;

}

}

}

}

}else if(num==2){

for(int i=0;ifor(int j=i+1;jif(arr[i]!=null&&arr[j]!=null){

if(arr[i].getC()Student t = arr[i];

arr[i] = arr[j];

arr[j] = t;

21 / 25

}

}

}

}

}else if(num==3){

for(int i=0;ifor(int j=i+1;jif(arr[i]!=null&&arr[j]!=null){

if(arr[i].getHtml()Student t = arr[i];

arr[i] = arr[j];

arr[j] = t;

}

22 / 25

}

}

}

}else if(num==4){

for(int i=0;ifor(int j=i+1;jif(arr[i]!=null&&arr[j]!=null){

if(arr[i].getSql()arr[i] = arr[j];

arr[j] = t;

}

}

23 / 25

}

}

}

this.print(arr);

}

public void sumSort(Student[] arr){//根据总分排序的方法

for(int i=0;ifor(int j=i+1;jif(arr[i]!=null&&arr[j]!=null){

if(arr[i].getSum()Student t = arr[i];

arr[i] = arr[j];

arr[j] = t;

24 / 25

}

}

}

}

this.print(arr); }

}

25 / 25

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo7.cn 版权所有 湘ICP备2022005869号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务