永发信息网

java老师让周日交学生成绩档案管理系统~~

答案:3  悬赏:70  手机版
解决时间 2021-04-16 08:55
老师让交需求分析报告 希望能有人愿意帮忙~~~~
最佳答案

import java.io.*;
import java.util.Scanner;


//学生类
class Student{
public static int count=0;
private String id;
private String name;
private int age;
private int score1;
private int score2;
public Student(String id,String name,String age,String score1,String score2){
this.id=id;
this.name=name;
this.age=Integer.parseInt(age);
this.score1=Integer.parseInt(score1);
this.score2=Integer.parseInt(score2);
}
public Student(String id,String name,int age,int score1,int score2){
this.id=id;
this.name=name;
this.age=age;
this.score1=score1;
this.score2=score2;
}
public String GetId(){
return id;
}
public String GetName(){
return name;
}
public int GetAge(){
return age;
}
public int GetScore1(){
return score1;
}
public int GetScore2(){
return score2;
}
public void Display(){
System.out.println(id+"\t"+name+"\t"+age+"\t"+score1+"\t"+score2);
}
public Student(){
}
}


//学生成绩管理系统
public class StudentInfo{


public static final int MAX=100;
public static Student[] stu=new Student[MAX];


public static void Output()throws IOException{
PrintWriter br=new PrintWriter(new BufferedWriter(new FileWriter("student.in")));
br.println("id\tname\tage\tscore1\tscore2");
for(int i=0;i<Student.count;i++){
br.println(stu[i].GetId()+"\t"+stu[i].GetName()+"\t"+stu[i].GetAge()+"\t"+stu[i].GetScore1()+"\t"+stu[i].GetScore2());
}
br.close();
}


public static void Input(){
//BufferedReader br=new BufferedReader(new FileReader("student.out"));
try{
Scanner sc=new Scanner(new FileReader("student.in"));
String str;
for(int i=0;i<5;i++){
str=sc.next();
}
String[] str1=new String[5];
for(int j=0;j<MAX;j++){
for(int i=0;i<5;i++){
str1[i]=sc.next();
}
stu[j]=new Student(str1[0],str1[1],str1[2],str1[3],str1[4]);
Student.count++;
}
}
catch(Exception e){
System.out.println("The end!");
}
}


public static void InitSystem()throws IOException{
System.out.println("Welcom to the StudentInfo System!");
System.out.println("[0].Exit the System.");
System.out.println("[1].Input the students' information.");
System.out.println("[2].Add a student's information.");
System.out.println("[3].Delete a student's information.");
System.out.println("[4].Display all information.");
String str;
System.out.print("Input your choice:");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
str=br.readLine();
int i=Integer.parseInt(str);
switch(i){
case 1:
InputStuInfo();
InitSystem();
break;
case 2:
AddStuInfo();
InitSystem();
break;
case 3:
DelStuInfo();
InitSystem();
break;
case 4:
Display();
InitSystem();
break;
case 0:
System.exit(1);
break;
default:
InitSystem();
break;
}
}


public static void InputStuInfo() throws IOException{
String[] str=new String[5];
String str1;
for(int i=0;Student.count!=0;i++){
Student.count--;
}
System.out.println("id\tname\tage\tscore1\tscore2");
//Student[] stu=new Student[6];


outer:
for(int j=0;j<MAX;j++){
Scanner sc=new Scanner(System.in);
for(int i=0;i<5;i++){
str[i]=sc.next();
if(str[i].equals("end"))
break outer;


}
stu[j]=new Student(str[0],str[1],str[2],str[3],str[4]);
Student.count++;
}
Output();
}


public static void AddStuInfo()throws IOException{
String[] str=new String[5];
String str1;
Scanner sc=new Scanner(System.in);
System.out.println("id\tname\tage\tscore1\tscore2");
for(int i=0;i<5;i++)
str[i]=sc.next();
if(Student.count==MAX){
System.out.println("Can't add Student,The system is full");
}
else{
stu[Student.count]=new Student(str[0],str[1],str[2],str[3],str[4]);
Student.count++;
}
Output();
}


public static void DelStuInfo()throws IOException{
System.out.print("Please input the id of the student you want to delete:");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
int i;
i=Search(str);
if(i==-1)
System.out.println("Can't find the student"+str);
else{
System.out.println("You delete the student:"+stu[i].GetName());
for(int temp=i;temp<Student.count-1;temp++)
stu[temp]=new Student(stu[temp+1].GetId(),stu[temp+1].GetName(),stu[temp+1].GetAge(),stu[temp+1].GetScore1(),stu[temp+1].GetScore2());
Student.count--;
Output();
}


}


public static void Display(){
System.out.println("id\tname\tage\tscore1\tscore2");
for(int i=0;i<Student.count;i++){
stu[i].Display();
}


}


public static int Search(String str){
int i;
for(i=0;i<MAX;i++){
if(str.equals(stu[i].GetId()))
break;
}
if(i==MAX)
return -1;
else
return i;
}
public static void main(String[] args)throws IOException{
Input();
InitSystem();
}



}

全部回答

你不晓得学生成绩档案管理系统需要说明需求???

就是需要 学生个人信息(比如:年龄,姓名....),科目信息(比如:语文,数学...),班级信息,年纪信息

你需要“ 学生成绩档案管理系统 ”实现一些什么功能?针对这些功能进行分析,如何用程序语言实现,就是需求分析报告
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
木饰家·家具地址有知道的么?有点事想过去
那啥,DNF上线了说我名字违法,然后提示一次
久石让 summer 钢琴双手简谱
为什么海珠区又叫做河南?
表情性句子,指令性句子特征简要说明一下。拜
搭建一个PLC试验台
请问干洗店跟洗衣工厂有什么区别?
诸侯游戏中,怎么强化装备?
Z7号路地址在什么地方,想过去办事
朋友我怎么来对你?
C++里的if语句能否用来判断两个字符串是否相
360×45竖式
1100-1300的诺基亚的手机那个好?
MP3 开不了机 连电脑也没反应
这台3000块的电脑配置,玩玩一般游戏,能混个
推荐资讯
彩色美瞳天天戴好么
金(Au)、银(Ag)、铜(Cu)曾长期作为货币
女孩讨厌什么样的男孩
莎士比亚暴风雨的名句,求莎士比亚的的著作及
三星22寸电脑显示器需要多少钱?
为什么我长时间看太阳就会打喷嚏呢?
用Cool Edit Pro 2.1喊麦高手进
孕七个月双顶径74mm股骨长54mm胎儿大概有几斤
仙人掌的皮层有一块是白色的
一台电脑可以不可以同时安装两个杀毒软件?诺
dnf2016焚天祭手环怎么样
中华车的车载CD怎么调时间?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?