马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
package xitong;
import java.util.*;;
class KeCheng{
String KeChengName; //课程名称
String BiXiu; //是否是必修课
String teacher; //授课教师
int hour; //学时
int Grade; //学分
static int count; //课程个数
KeCheng(){} //构造方法
KeCheng(String KeChengName,String BiXiu,String teacher,int hour,int Grade){
this.KeChengName=KeChengName;
this.BiXiu=BiXiu;
this.teacher=teacher;
this.hour=hour;
this.Grade=Grade;
}
}
class KeChengVector {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
KeChengVector manage=new KeChengVector();
Vector<KeCheng> KeCheng=manage.init(); //课程系统初始化录入信息
manage.menu(); //呈现系统菜单
System.out.println("请输入相应的编号:");
int x; //用户指令
while(true){
x=sc.nextInt();
switch (x){
//0、退出系统
case 0:System.out.println("已退出系统,欢迎下次使用!");sc.close();System.exit(0);break;
//1、课程添加
case 1:KeCheng=manage.addKeCheng(KeCheng);break;
//2、课程删除
case 2:KeCheng=manage.deleteKeCheng(KeCheng);break;
//3、显示全部课程信息
case 3:manage.displayAllKeCheng(KeCheng);break;
//4、课程查询
case 4:manage.referKeCheng(KeCheng);break;
//5、重现菜单
case 5:manage.menu();break;
//输入错误
default:System.out.print("输入有误,");
}
System.out.println("请输入“5”重现主菜单,输入“0”退出系统)");
}
}
//初始化
Vector<KeCheng> init(){
Scanner sc=new Scanner(System.in);
KeChengVector manage=new KeChengVector();
Vector<KeCheng> KeCheng=new Vector<KeCheng>();
System.out.println("————————————————课程管理系统————————————————");
System.out.println("————————————————————————————————————————");
System.out.println("正在初始化课程信息列表,请输入要创建的课程数:");
int count=sc.nextInt();
System.out.println("(一行一门课程)\n课程名称\t是否是必修课\t授课教师\t学时\t学分");
for(int i=0;i<count;i++){
KeCheng.addElement(manage.createKeCheng());
}
System.out.println("已完成课程信息录入。");
return KeCheng;
}
//创建一个KeCheng对象
KeCheng createKeCheng(){
Scanner sc=new Scanner(System.in);
String KeChengName=sc.next();
String BiXiu=sc.next();
String teacher=sc.next();
int hour=sc.nextInt();
int Grade=sc.nextInt();
KeCheng sc1=new KeCheng(KeChengName,BiXiu,teacher,hour,Grade);
return sc1;
}
//系统菜单方法
void menu(){
System.out.println("————————————————课程管理系统————————————————");
System.out.println("————————————————————————————————————————");
System.out.println(" 1、课程添加 2、课程删除");
System.out.println(" 3、显示全部课程信息 4、 课程查询");
System.out.println(" 0、退出系统");
System.out.println("————————————————————————————————————————");
}
//课程添加方法
Vector<KeCheng> addKeCheng(Vector<KeCheng> KeCheng){
Scanner sc=new Scanner(System.in);
KeChengVector manage=new KeChengVector();
System.out.println("请输入要添加的课程数:");
int count=sc.nextInt();
System.out.println("(一行一门课程)\n课程名称\t是否是必修课\t授课教师\t学时\t学分");
for(int i=0;i<count;i++){
KeCheng.addElement(manage.createKeCheng());
}
System.out.println("已完成课程信息添加。");
return KeCheng;
}
//显示所有课程信息方法
void displayAllKeCheng(Vector<KeCheng> KeCheng){
System.out.println("所有课程信息:");
System.out.println("实时编号\t课程名称\t是否是必修课\t授课教师\t学时\t学分");
for(int i=0;i<KeCheng.size();i++){
System.out.println((i+1)+"\t"+KeCheng.elementAt(i).KeChengName+"\t"+KeCheng.elementAt(i).BiXiu+"\t"+KeCheng.elementAt(i).teacher+"\t"+KeCheng.elementAt(i).hour+"\t"+KeCheng.elementAt(i).Grade);
}
}
//课程查询方法
void referKeCheng(Vector<KeCheng> KeCheng){
Scanner sc=new Scanner(System.in);
int x; //用户指令
int normal; //指令输入是否正确
int get; //查询是否得到结果
while(true){
normal=1;
get=0;
System.out.println("查询课程,请选择:\n1、按课程名查询\t2、按授课老师查询\t0、退出查询");
x=sc.nextInt();
//课程名
if(x==1){
System.out.println("请输入课程名:");
String name=sc.next();
System.out.println("查询结果:");
System.out.println("编号\t课程名称\t是否是必修课\t授课教师\t学时\t学分");
for(int i=0;i<KeCheng.size();i++){
if(KeCheng.elementAt(i).KeChengName.equals(name)){
get=1;
System.out.println((i+1)+"\t"+KeCheng.elementAt(i).KeChengName+"\t"+KeCheng.elementAt(i).BiXiu+"\t"+KeCheng.elementAt(i).teacher+"\t"+KeCheng.elementAt(i).hour+"\t"+KeCheng.elementAt(i).Grade);
}
}
if(get==0){
System.out.println("没有相关结果!");
}
}
//授课老师
else if(x==2){
System.out.println("请输入授课老师名:");
String name=sc.next();
System.out.println("查询结果:");
System.out.println("编号\t课程名称\t是否是必修课\t授课教师\t学时\t学分");
for(int i=0;i<KeCheng.size();i++){
if(KeCheng.elementAt(i).teacher.equals(name)){
get=1;
System.out.println((i+1)+"\t"+KeCheng.elementAt(i).KeChengName+"\t"+KeCheng.elementAt(i).BiXiu+"\t"+KeCheng.elementAt(i).teacher+"\t"+KeCheng.elementAt(i).hour+"\t"+KeCheng.elementAt(i).Grade);
}
}
if(get==0){
System.out.println("没有相关结果!");
}
}
else if(x==0){
break;
}
//输入错误
else{
normal=0;
System.out.println("输入错误,请重新选择:");
}
//每次正常完成查询后询问是否继续查询
if(normal==1){
System.out.println("继续查询请输“1”,退出查询请输“0”:");
if(sc.nextInt()==0){
break;
}
}
}
}
//课程删除方法
Vector<KeCheng> deleteKeCheng(Vector<KeCheng> KeCheng){
Scanner sc=new Scanner(System.in);
KeChengVector manageNow=new KeChengVector();
int i; //删除项索引号
while(true){
System.out.println("对要删除的课程进行查询,");
manageNow.referKeCheng(KeCheng);
System.out.println("请输入要删除的一个课程编号:(输“0”退出删除)");
i=sc.nextInt()-1;
if(i>KeCheng.size()-1||i<-1){
System.out.print("没有此编号,");
}
else if(i==-1){
break;
}
else{
//删除项确认
System.out.println("即将删除的课程为:");
System.out.println("编号\t课程名称\t是否是必修课\t授课教师\t学时\t学分");
System.out.println((i+1)+"\t"+KeCheng.elementAt(i).KeChengName+"\t"+KeCheng.elementAt(i).BiXiu+"\t"+KeCheng.elementAt(i).teacher+"\t"+KeCheng.elementAt(i).hour+"\t"+KeCheng.elementAt(i).Grade);
System.out.println("确认 删除请输“1”,退出删除请输“0”:");
if(sc.nextInt()==0){
break;
}
//进行删除
KeCheng.remove(i);
System.out.print("系统现存");
manageNow.displayAllKeCheng(KeCheng);
//询问是否继续删除
System.out.println("继续 删除请输“1”,退出删除请输“0”:");
if(sc.nextInt()==0){
break;
}
}
}
return KeCheng;
}
}
|