package paperInformation;

import java.util.Scanner;
public class paperManagement
{
Scanner input=new Scanner(System.in);
scoreInformation[] si=new scoreInformation[5];
scoreInformation si0=new scoreInformation("20203904","yangpei","xin03",null,null,0.0,false);
scoreInformation si1=new scoreInformation("20203904","yangpei","xin03",null,null,0.0,false);

public static void mainFrame() //系统进入界面
{
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系 ");
System.out.println(" 毕业设计论文管理系统2021版 ");
System.out.println("***********************************************************");
System.out.println(" 1、毕业设计论文提交 ");
System.out.println(" 2、毕业设计论文查重 ");
System.out.println(" 3、毕业设计论文审查 ");
System.out.println(" 4、退出论文管理系统 ");
System.out.println("***********************************************************");
}
public void xuehao(int choice) //学号判断
{
System.out.println("***********************************************************") ;
System.out.println (" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版 ");
System.out.println(" 毕业设计论文提交 " );
System.out.println("***********************************************************");
System.out.println(" 请输入八位学生学号: " );
System.out.println("**********************************************************");
Scanner input=new Scanner(System.in);
String stunumber=input.nextLine();
input.close();
if(choice==1)
{
boolean flag=true;
while(flag)
{
String a=si0.getstunumber();
String b=si1.getstunumber();
if(stunumber.equals(a))
{xinxi(si0,1);
paperSubmission(si0);
flag=false;}
else if(stunumber.equals(b))
{xinxi(si1,1);
paperSubmission(si1);
flag=false;}
else {
System.out.println("学号错误");
xuehao(1);}
}
}
if(choice==2)
{
boolean flag=true;
while(flag)
{
String a=si0.getstunumber();
String b=si1.getstunumber();
if(stunumber.equals(a))
{xinxi(si0,2);
paperPass(si0);
flag=false;}
else if(stunumber.equals(b))
{xinxi(si1,2);
paperPass(si1);
flag=false;}
else {
System.out.println("学号错误");
xuehao(2);}
}
}
if(choice==3)
{
boolean flag=true;
while(flag)
{
String a=si0.getstunumber();
String b=si1.getstunumber();
if(stunumber.equals(a))
{xinxi(si0,3);
paperReview(si0);
flag=false;}
else if(stunumber.equals(b))
{xinxi(si1,3);
paperReview(si1);
flag=false;}
else {
System.out.println("学号错误");
xuehao(3);}
}
}

}
public void xinxi(scoreInformation sc,int choice) //信息显示
{
if(choice==1)
{
System.out.println("***********************************************************") ;
System.out.println (" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版 ");
System.out.println(" 毕业设计论文提交 " );
System.out.println("***********************************************************");
System.out.println(" 学生学号: "+sc.getstunumber()+" ");
System.out.println(" 学生姓名:"+sc.getname()+" ");
System.out.println(" 所在班级:"+sc.getstuclass()+" ");
System.out.println(" 请输入毕业设计论文题目: ");
System.out.println(" 请输入毕业论文正文: ");
System.out.println("**********************************************************");
}
if(choice==2)
{
System.out.println("***********************************************************") ;
System.out.println (" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版 ");
System.out.println(" 毕业设计论文提交 " );
System.out.println("***********************************************************");
System.out.println(" 学生学号: "+sc.getstunumber()+" ");
System.out.println(" 学生姓名:"+sc.getname()+" ");
System.out.println(" 所在班级:"+sc.getstuclass()+" ");
System.out.println(" 请输入毕业设计论文题目:"+sc.getpapertitle()+" ");
System.out.println(" 请输入毕业论文正文:"+sc.getpaperbody()+" ");
System.out.println("**********************************************************");
}
if(choice==3)
{
System.out.println("***********************************************************") ;
System.out.println (" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版 ");
System.out.println(" 毕业设计论文提交 " );
System.out.println("***********************************************************");
System.out.println(" 学生学号: "+sc.getstunumber()+" ");
System.out.println(" 学生姓名:"+sc.getname()+" ");
System.out.println(" 所在班级:"+sc.getstuclass()+" ");
System.out.println(" 请输入毕业设计论文题目:"+sc.getpapertitle()+" ");
System.out.println(" 请输入毕业论文正文:"+sc.getpaperbody()+" ");
System.out.println(" 毕业论文查重率:"+sc.getpaperpass()+" ");
System.out.println("**********************************************************");
}
}
public void paperSubmission(scoreInformation sc) // 提交方法
{
Scanner input=new Scanner(System.in);
String topic=input.nextLine();
input.close();
int m=topic.length();
if(m>20)
{
System.out.println("题目太长不符合格式,请重新输入:"); //判断题目长度;
xinxi(sc,1);
}
else {
System.out.println("请输入论文正文内容:");//判断正文大小
String body=input.nextLine();
int n=body.length();
if(n>=400)
{
System.out.println("正文内容超出要求长度");
xinxi(sc,1);
}
else
{
System.out.println("该学生成绩已录入完毕,是否提交(Y/N)");
char select=input.next().charAt(0);
if(select=='Y') {sc.setpapertitle(topic);sc.setpaperbody(body);mainFrame();}
else mainFrame();}
}
}
public void paperPass(scoreInformation sc) //查重率提交
{
xuehao(2);
Scanner input=new Scanner(System.in);
double rate=input.nextDouble();
sc.setpaperpass(rate);
input.close();
if(rate>20) {
System.out.println("该学生毕业设计论文重复率超过20%,不允许进行论文审查");
paperPass(sc);
}
else
{
xinxi(sc,3);
System.out.println(" (Y/N) ");
char select=input.next().charAt(0);
if(select=='Y')paperPass(sc);
if(select=='N')mainFrame();
}

}
public void paperReview(scoreInformation sc)
{
if(sc.getpaperpass()>0.2)
{
System.out.println("该学生毕业设计论文重复率超过20%,不允许进行论文审查");
paperReview(sc);
}
else
{
xinxi(sc,3);
System.out.println("是否同意该学生参加毕业设计答辩:(Y/N)");
char select=input.next().charAt(0);
if(select=='Y')paperReview(sc);
if(select=='N')mainFrame();
}
}
public static void main(String[] args)
{
paperManagement p=new paperManagement();
mainFrame();
Scanner input=new Scanner(System.in);
int select=input.nextInt();
input.close();
switch(select) //用户选择选项
{
case 1:
p.xuehao(1);
break;
case 2:
p.xuehao(2);
break;
case 3:
p.xuehao(3);
break;
case 4:
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版 ");
System.out.println(" 制作人:杨佩 ");
System.out.println("***********************************************************");
System.exit(-1);
break;
default:
System.out.println("输入信息有误");
break;
}
}
};

package paperInformation;

import java.util.Scanner;

 class scoreInformation 
{
    Scanner sc = new Scanner(System.in);
    
    private String stunumber;
    private String name;
    private String stuclass;
    private String papertitle;
    private String paperbody;
    private double paperpass;
    private boolean paperreview;
    
    public scoreInformation()
    {
        
    }
    
    public scoreInformation(String stunumber,String name,String stuclass,String papertitle,String paperbody,double paperpass,boolean paperreview)
    {
        this.stunumber = stunumber;
        this.name = name;
        this.stuclass = stuclass;
        this.papertitle = papertitle;
        this.paperbody = paperbody;
        this.paperpass = paperpass;
        this.paperreview = paperreview;
    }
    public void setstunumber(String stunumer)
    {
        this.stunumber = stunumer;
    }
    public String getstunumber()
    {
        return this.stunumber;
    }
    
    public void setname(String name)
    {
        this.name = name;
    }
    public String getname()
    {
        return this.name;
    }
    
    public void setstuclass(String stuclass)
    {
        this.stuclass = stuclass;
    }
    public String getstuclass()
    {
        return this.stuclass;
    }
    
    public void setpapertitle(String papertitle)
    {
        this.papertitle = papertitle;
    }
    public String getpapertitle()
    {
        return this.papertitle;
    }
    
    public void setpaperbody(String paperbody)
    {
        this.paperbody = paperbody;
    }
    public String getpaperbody()
    {
        return this.paperbody;
    }
    
    public void setpaperpass(double paperpass)
    {
        this.paperpass = paperpass;
    }
    public double getpaperpass()
    {
        return this.paperpass;
    }
    
    public void setpaperview(boolean paperreview)
    {
        this.paperreview = paperreview;
    }
    public boolean getpaperreview()
    {
        return this.paperreview;
    }
}

二、 数据结构要求:(5分)

1、定义ScoreInformation类,其中包括七个私有变量(stunumber, name,stuclass, papertitle,paperbody,paperpass,paperreview)。

各成员的含义如下:

变量 stunumber 为字符串类型 String,用于存储学生的学号(有8 位数字组成)。

变量 name 为字符串类型 String,用于存储学生的姓名。

变量stuclass为String 类型,用于存储学生的班级。

变量papertitle为String 类型,用于存储学生的毕业设计论文题目,要求限制输入字符为10个。

变量paperbody为String类型,用于存储学生的毕业设计论文正文,要求限制输入字符为200个。

变量paperpass为double 类型,用于存储学生的论文的查重率,初始值设为0。

变量paperreview为boolean 类型,用于存储毕业设计论文的最终审查效果,true代表通过审查,false代表未通过审查,初始值设为“false”。

对每个变量定义 get()(读取变量信息)和 set()(设置变量信息)的方法。

2、赋初值方法包括七个参数,用于为变量(stunumber, name,stuclass, papertitle,paperbody,paperpass,paperreview)赋值。

三、 功能要求:(10分)

该系统完成学生毕业设计论文管理的简单功能,定义PaperManagement类完成下列功能。

1、利用数组实现至少存储五个学生毕业设计论文的基本信息; (将考生信息作为第一条记录)。1分)

2、毕业设计论文管理系统的主界面如下图所示:1分)

①界面要求;(0.5分)

***********************************************************石家庄铁道大学软件工程系

毕业设计论文管理系统2021版

***********************************************************

1、毕业设计论文提交

2、毕业设计论文查重

3、毕业设计论文审查

4、退出论文管理系统

**********************************************************

 

②功能说明

输入数字1-4执行相应的功能,输入其他数字提示错误信息(该选项不存在),并返回主界面。(0.5分)

 

2、毕业设计论文提交功能操作流程:(3分)

①在主界面选择“毕业设计论文提交”功能后,进入“毕业设计论文提交”界面,如下图所示:(0.5分)

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文提交

***********************************************************

请输入学生学号:XXXXXXXX

**********************************************************

提示用户输入八位的学号。

②用户输入学号后,显示用户学号、姓名、班级,如果用户学号不存在或信息错误提示错误信息(该学号不存在),并返回成绩录入界面。(0.5分)

③用户输入学号正确如下图所示:

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文提交

***********************************************************

学生学号:20203982

学生姓名:薛贺程

所在班级:信2005-1班

请输入毕业设计论文题目:XXXXXX XXXX

**********************************************************

提示用户输入毕业设计论文题目,如果毕业设计论文题目超过10个字符,则提醒用户错误信息,返回当前界面重新输入;(0.5分)

如果满足要求,则提示用户输入毕业设计论文正文,同题目一样判断是否超过200个字符,超过重新输入。(0.5分)

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文提交

***********************************************************

学生学号:20203982

学生姓名:薛贺程

所在班级:信2005-1班

请输入毕业设计论文题目:XXXXXX XXXX

请输入毕业设计论文正文:XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX

 

**********************************************************

 

输入毕业设计论文正文最后输入(END)代表论文正文输入完成,显示如下界面。(0.5分)

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文提交

***********************************************************

学生学号:20203982

学生姓名:薛贺程

所在班级:信2005-1班

毕业设计论文题目:XXXXXX XXXX

毕业设计论文正文:XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX

该学生成绩已录入完毕,是否提交(Y/N)

**********************************************************

选择“Y”将论文题目和正文内容保存到相应的数组中,并返回主界面。选择“N”,则忽略上述录入内容,并返回论文提交界面。(0.5分)

 

3、毕业设计论文查重(2分)

①在主界面选择“毕业设计论文查重”功能后,进入“毕业设计论文查重”界面,如下图所示:

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文查重***********************************************************

请输入学生学号:XXXXXXXX

**********************************************************

提示用户输入八位的学号。

②用户输入学号后,显示用户学号、姓名、班级、毕业设计论文题目、毕业设计论文正文。如下图所示。(1.5分)

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文查重***********************************************************

学生学号:20203982

学生姓名:薛贺程

所在班级:信2005-1班

毕业设计论文题目:XXXXXX XXXX

毕业设计论文正文:XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX

请输入毕业设计论文查重率:XXX

**********************************************************

判断查重率输入是否符合要求,不符合则要求用户重新输入,符合显示下图选择信息。

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文查重***********************************************************

学生学号:20203982

学生姓名:薛贺程

所在班级:信2005-1班

毕业设计论文题目:XXXXXX XXXX

毕业设计论文正文:XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX

毕业设计论文查重率:XXX

Y/N

**********************************************************

③选择“Y”返回毕业设计论文查重输入学号界面。选择“N”,返回系统主界面。(0.5分)

4、毕业设计论文审查(2分)

①在主界面选择“毕业设计论文审查”功能后,进入“毕业设计论文审查”界面,如下图所示:

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文审查***********************************************************

请输入学生学号:XXXXXXXX

**********************************************************

提示用户输入八位的学号。

②用户输入学号后,显示用户学号、姓名、班级、毕业设计论文题目、毕业设计论文正文、毕业设计论文查重率。如下图所示。(1.5分)

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文查重***********************************************************

学生学号:20203982

学生姓名:薛贺程

所在班级:信2005-1班

毕业设计论文题目:XXXXXX XXXX

毕业设计论文正文:XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX

毕业设计论文查重率:XXX

**********************************************************

如果查重率大于等于0.2提示信息显示“该学生毕业设计论文重复率超过20%,不允许进行论文审查,直接返回毕业设计论文审查主页面。

则提示用户输入审查结果

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

毕业设计论文查重***********************************************************

学生学号:20203982

学生姓名:薛贺程

所在班级:信2005-1班

毕业设计论文题目:XXXXXX XXXX

毕业设计论文正文:XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX

毕业设计论文查重率:XXX

是否同意该学生参加毕业设计答辩:(Y/N

**********************************************************

 

 

③选择“Y”存储审查结果,返回毕业设计论文审查输入学号界面。选择“N”, 存储审查结果返回系统主界面。(0.5分)

 

 

5、用户选择数字“4”,显示如下界面,退出当前程序。(1分)

***********************************************************石家庄铁道大学软件工程系毕业设计论文管理系统2021版

制作人:考生姓名

***********************************************************