700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > JAVA——【案例】实现计算机系信息管理系统(教师和学生信息管理)

JAVA——【案例】实现计算机系信息管理系统(教师和学生信息管理)

时间:2022-11-11 21:08:42

相关推荐

JAVA——【案例】实现计算机系信息管理系统(教师和学生信息管理)

需求:

系统初始界面要显示系统名称、系统开发者的班级和姓名、开发时间、版权所有等信息。

2)系统要有主菜单,让用户可自由选择管理教师信息或管理学生信息或退出;

3)教师信息管理中至少有教师基本信息录入、课时数录入、打印教师信息表等功能;

4)学生信息管理中至少有学生基本信息录入、打印学生基本信息表、数学成绩录入、英语成绩录入、Java成绩录入、输出成绩表等功能;

5)在教师信息管理和学生信息管理中要有子菜单,可以让用户自由选择其中的子功能。

3.实验拓展要求(自由选择)

1)增加统计功能。如统计分数段、平均分、不及格学生等;

2)增加查询功能。如按学号或姓名查询成绩、查询平均分等。

import java.util.Scanner;public class TestManagement {public static void main(String[] args) {// TODO 自动生成的方法存根boolean loop = true;//定义一个用于判断是否继续循环(外层主菜单)的布尔类型常量Scanner input = new Scanner(System.in);teaManage teamanage = new teaManage(300);//创建teaManage对象以便调用其方法stuManage stumanage = new stuManage(1000);//创建stuManage对象以便调用其方法(容量为3000学生)while(loop) {ViewSystem.mainMenu();//调用显示主菜单System.out.println("请输入你选择的序号(0-2):");int choice = input.nextInt();//用于选择主菜单功能的输入if(choice == 1){boolean loop1 = true;//用于判断是否继续循环(教师信息管理功能)的布尔类型常量while(loop1) {ViewSystem.teaMenu();//显示教师子菜单System.out.println("请输入你选择的序号(0-3):");int num = input.nextInt();//用于选择教师子菜单的输入switch(num){case 1:teamanage.infoEntry();//调用(教师信息录入)方法break;case 2:teamanage.classHoursEntry();//调用(课时数录入)方法break;case 3:teamanage.teaList();//调用(输出教师列表)方法break;case 0:System.out.println("成功退出教师信息管理"+"\n");loop1 = false;break;default:System.out.println("[选择功能序号有误]"+"\n");break;}}}else if(choice == 2){boolean loop2 = true;//用于判断是否继续循环(学生信息管理功能)的布尔类型常量while(loop2) {ViewSystem.stuMenu();//显示学生子菜单System.out.println("请输入你选择的序号(0-8):");int num = input.nextInt();//用于选择学生子菜单的输入switch(num){case 1:stumanage.infoEntry();//调用(学生信息录入)方法break;case 2:stumanage.stuList();//调用(打印学生列表)方法break;case 3:stumanage.mathScore();//调用(录入数学成绩)方法break;case 4:stumanage.engScore();//调用(录入英语成绩)方法break;case 5:stumanage.javaScore();//调用(录入java成绩)方法break;case 6:stumanage.scoreList();//调用(输出成绩列表)方法break;case 7:boolean loop3 = true;//用于判断是否继续循环(成绩统计功能)的布尔类型常量loop3while(loop3) {ViewSystem.scoreStatistics();//显示成绩统计子菜单System.out.println("请输入你选择的序号(0-2):");int choice1 = input.nextInt();//用于选择学生子菜单的输入switch(choice1) {case 1:stumanage.aveScore();//调用(统计平均分)方法break;case 2:stumanage.flunkNum(); //调用(统计不及格人数)方法break;case 0:loop3 = false;System.out.println("返回上一级");break;default:System.out.println("[选择功能序号有误]"+"\n");break;}}break;case 8:boolean loop4 = true;//用于判断是否继续循环(学生查询功能)的布尔类型常量loop3while(loop4) {ViewSystem.stuSearch();//调用(学生查询)方法System.out.println("请输入你选择的序号(0-3):");int choice2 = input.nextInt();switch(choice2) {case 1:stumanage.stuNumSearch();//调用按学号查询功能break;case 2:stumanage.nameSearch();//调用按姓名查询功能break;case 0:loop4 = false;System.out.println("返回上一级");break;default:System.out.println("[选择功能序号有误]"+"\n");break;}}break;case 0:System.out.println("成功退出学生信息管理"+"\n");loop2 = false;break;default:System.out.println("[选择功能序号有误]"+"\n");break;}}}else if(choice == 0){System.out.println("成功退出计算机系信息管理系统"+"\n");loop = false;}else {System.out.println("选择序号错误..."+"\n");}}}}class teaManage {//教师信息管理类private Teacher[] teacher;//保存Teacher对象类型数组,数组名为teacherScanner input = new Scanner(System.in);private int teaNum ;//教师人数private int number = 0;//本次要输入的教师信息数//构造器,定义参数size,public teaManage(int size) {teacher = new Teacher[size];//当创建HouseService对象,此构造器能够指定teacher数组大小}//get、set方法public int getTeaNum() {return teaNum;}public void setTeaNum(int teaNum) {this.teaNum = teaNum;}public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}public void infoEntry() {//教师信息录入System.out.println("输入教师人数:");number = input.nextInt();System.out.println("请输入"+number+"个教师的身份证、姓名、教师号:");for(int i = 0;i < number; i++) {teacher[teaNum+i] = new Teacher();//把教师对象数组中的teacher[i]对象实例化teacher[teaNum+i].setId(input.next());//接收身份证输入并赋值给对象teacher[teaNum+i].setName(input.next());//接收姓名输入并赋值给对象teacher[teaNum+i].setTeaNum(input.next());//接收教师号输入并赋值给对象}teaNum += number;//更新当前已存教师信息个数}public void classHoursEntry() {//课时数录入System.out.println("请输入"+number+"个教师的课时数");for(int i = teaNum - number;i < teaNum; i++) {teacher[i].setClassHours(input.nextInt());//接收身份证输入并赋值给对象}}public void teaList() {//输出教师列表System.out.println("教师号\t姓名\t课时数");for(int i = 0;i < teaNum; i++) {System.out.println(teacher[i].getTeaNum()+"\t"+teacher[i].getName()+"\t"+teacher[i].getClassHours()+"\t");}}}class stuManage{//学生信息管理类private Student[] student;//保存Student对象类型数组,数组名为studentScanner input = new Scanner(System.in);private int stuNum ;//学生人数private int number = 0;//本次要输入的学生信息数//构造器,定义参数size,public stuManage(int size) {student = new Student[size];//当创建HouseService对象,此构造器能够指定teacher数组大小}public void infoEntry() {//学生信息录入System.out.println("输入学生人数:");number = input.nextInt();System.out.println("请输入"+number+"学生的身份证、姓名、学号:");for(int i = 0;i < number; i++) {student[stuNum+i] = new Student();//把学生对象数组中的student[i]对象实例化student[stuNum+i].setId(input.next());//接收身份证输入并赋值给对象student[stuNum+i].setName(input.next());//接收姓名输入并赋值给对象student[stuNum+i].setStuNum(input.next());//接收学号输入并赋值给对象}stuNum += number;//更新当前已存教师信息个数}public void stuList() {//打印学生信息System.out.println("学号\t姓名");for(int i = 0;i < stuNum; i++) {System.out.println(student[i].getStuNum()+"\t"+student[i].getName());}}public void mathScore() {//数学成绩录入for(int i = stuNum - number; i < stuNum;i++) {System.out.println(student[i].getName()+"的数学成绩");student[i].setMath(input.nextDouble());}}public void engScore() {//英语成绩录入for(int i = stuNum - number; i < stuNum;i++) {System.out.println(student[i].getName()+"的英语成绩");student[i].setEnglish(input.nextDouble());}}public void javaScore() {//java成绩录入for(int i = stuNum - number; i < stuNum;i++) {System.out.println(student[i].getName()+"的Java成绩");student[i].setJava(input.nextDouble());}}public void scoreList() {//输出成绩列表System.out.println("学号\t姓名\t数学\t英语\tJava");for(int i = 0;i < stuNum;i++) {System.out.println(student[i].getStuNum()+"\t"+student[i].getName()+"\t"+student[i].getMath()+"\t"+student[i].getEnglish()+"\t"+student[i].getJava());}}//0.返回 1.平均分 2.不及格学生public void aveScore() {//学生成绩平均分功能double avg;System.out.println("姓名\t学号\t平均分");for(int i = 0; i < stuNum;i++) {avg = (student[i].getMath()+student[i].getEnglish()+student[i].getJava())/3;//算平均分System.out.println(student[i].getName()+"\t"+student[i].getStuNum()+"\t"+String.format("%.2f", avg));//输出小数点为两位数的平均分}}public void flunkNum() {//统计不及格人数功能int mathNum = 0,engNum = 0,JavaNum = 0;//定义统计三个科目不及格人数for(int i = 0; i < stuNum;i++) {if(student[i].getMath() < 60) {mathNum += 1;}if(student[i].getEnglish() < 60) {engNum += 1;}if(student[i].getJava() < 60) {JavaNum += 1;}}System.out.println("[不及格人数]\n数学\t英语\tJava");System.out.println(mathNum+"\t"+engNum+"\t"+JavaNum);}//0.返回 1.按学号查询 2.按姓名查询 public void stuNumSearch() {//按学号查询学生信息功能System.out.println("请输入要查询学生信息的学号:");String searchNum = input.next();//接收输入学号for(int i = 0;i < stuNum;i++) {//遍历判断学号是否存在if(searchNum.equals(student[i].getStuNum())) {//存在即输出该学生信息System.out.println("学号\t姓名\t数学\t英语\tJava");System.out.println(student[i].getStuNum()+"\t"+student[i].getName()+"\t"+student[i].getMath()+"\t"+student[i].getEnglish()+"\t"+student[i].getJava());}else {System.out.println("查询失败,学号不存在");}}}public void nameSearch() {//按姓名查询学生信息功能System.out.println("请输入要查询学生信息的姓名:");String searchname = input.next();//接收输入姓名for(int i = 0;i < stuNum;i++) {//遍历判断姓名是否存在if(searchname.equals(student[i].getName())) {//存在即输出该学生信息System.out.println("学号\t姓名\t数学\t英语\tJava");System.out.println(student[i].getStuNum()+"\t"+student[i].getName()+"\t"+student[i].getMath()+"\t"+student[i].getEnglish()+"\t"+student[i].getJava());}else {System.out.println("查询失败,学号不存在");}}}}class Person{//人员类private String Id;//身份证号private String name;//姓名private int age;//年龄private char gender;//性别private String major;//专业//get、set方法public String getId() {return Id;}public void setId(String id) {Id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public char getGender() {return gender;}public void setGender(char gender) {this.gender = gender;}public String getMajor() {return major;}public void setMajor(String major) {this.major = major;}public String printInformation() {//基本信息输出方法(人员类属性)return Id + "\t" + name + "\t" + age+"\t" + gender + "\t" + major;}}class Teacher extends Person{//Person的教师子类private String teaNum;//教师工号private int classHours; //课时数//get、set方法public String getTeaNum() {return teaNum;}public void setTeaNum(String teaNum) {this.teaNum = teaNum;}public int getClassHours() {return classHours;}public void setClassHours(int classHours) {this.classHours = classHours;}public String printInformation() {//重写基本信息输出方法return super.printInformation() + "\t" + teaNum;}}class Student extends Person{//Person的学生子类private String stuNum;//学号private double math; //数学成绩private double english; //英语成绩private double Java; //java成绩//get、set方法public String getStuNum() {return stuNum;}public void setStuNum(String stuNum) {this.stuNum = stuNum;}public double getMath() {return math;}public void setMath(double math) {this.math = math;}public double getEnglish() {return english;}public void setEnglish(double english) {this.english = english;}public double getJava() {return Java;}public void setJava(double java) {Java = java;}public String printInformation(){//重写基本信息输出方法return super.printInformation() + "\t" + stuNum;}public double aveScore() {//平均分计算return (math + english + Java) / 3;}}class ViewSystem{//菜单显示你public static void mainMenu() {//显示外层主菜单System.out.println("=============计算机系信息管理系统=============");System.out.println("== 系统开发人:熊 | 林 | 林 ==");System.out.println("== 曾 | 杨 | 稚 ==");System.out.println("== 开发时间:/4/25 ==");System.out.println("== 版本x1.0 版权所有:01红客行星俱乐部 ==");System.out.println("============================================");System.out.println();System.out.println("+++++++++++系 统 功 能+++++++++++");System.out.println("** 0 退 出 系 统 **");System.out.println("** 1 教 师 信 息 管 理 **");System.out.println("** 2 学 生 信 息 管 理 **");System.out.println("*******************************");System.out.println();}public static void teaMenu() {//教师信息管理菜单System.out.println("============= 教师信息管理 ==============");System.out.println("== 0.退出系统 1.教师信息录入 2.录入课时信息 3.教师信息打印 ==");System.out.println("==================================+++++====");System.out.println();}public static void stuMenu() {//学生信息管理菜单System.out.println("===================学生信息管理=========================");System.out.println("== 1.学生信息录入 2.打印学生信息表 3.录入数学成绩==");System.out.println("== 4.录入英语成绩 5.录入Java成绩 6.打印成绩表 ==");System.out.println("== 7.成绩统计8.学生查询 0.返回 ==");System.out.println("==================================================================");System.out.println();}public static void scoreStatistics() {//学生成绩统计功能System.out.println("============ 学生成绩统计 =============");System.out.println("== 0.返回 1.平均分 2.不及格学生 ==");System.out.println("=========================================");}public static void stuSearch() {//学生查询功能System.out.println("=============== 学生查询功能 ==============");System.out.println("== 0.返回 1.按学号查询 2.按姓名查询 ==");System.out.println("============================================");}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。