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

1定义ScoreInformation类,其中包括个私有变量(stunumbernamestuclass, papertitle,paperbodypaperpass,paperreview)。

各成员的含义如下:

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

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

变量stuclassString 类型,用于存储学生的班级

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

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

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

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

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

2赋初值方法包括个参数,用于为变量stunumbernamestuclass, papertitle,paperbodypaperpass,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

制作人:考生姓名

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

 

分解为数据类ScoreInformation类(数据类,非主类) 执行类PaperManagement类(主类,定义业务逻辑)

package ceshi;
public class ScorInformation {
private String stunumber;
private String name;
private String papertitle;
private String paperbody;
private String stuclass;
private double paperpass=0.0;
private boolean paperreview=false;
public ScorInformation(){
}
public ScorInformation(String stunumber, String name, String papertitle, String paperbody, double paperpass, boolean paperreview) {
this.stunumber = stunumber;
this.name = name;
this.papertitle = papertitle;
this.paperbody = paperbody;
this.paperpass = paperpass;
this.paperreview = paperreview;
}
public String getStunumber() {
return stunumber;
}
public void setStunumber(String stunumber) {
this.stunumber = stunumber;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPapertitle() {
return papertitle;
}

public void setPapertitle(String papertitle) {
this.papertitle = papertitle;
}

public String getPaperbody() {
return paperbody;
}

public void setPaperbody(String paperbody) {
this.paperbody = paperbody;
}

public double getPaperpass() {
return paperpass;
}

public void setPaperpass(double paperpass) {
this.paperpass = paperpass;
}

public boolean isPaperreview() {
return paperreview;
}

public void setPaperreview(boolean paperreview) {
this.paperreview = paperreview;
}

public String getStuclass() {
return stuclass;
}

public void setStuclass(String stuclass) {
this.stuclass = stuclass;
}
}

执行类PaperManagement类划分为

package ceshi;
//信2005-2 20200006 辰逸
import java.util.ArrayList;
import java.util.Scanner;
public class PaperManagement {
public static void show() {
System.out.println("***********************************************************\n" +
"\t\t\t\t石家庄铁道大学软件工程系\n" +
"\t\t\t\t毕业设计论文管理系统2021版\n" +
"***********************************************************\n" +
"\t\t\t\t1、毕业设计论文提交\n" +
"\t\t\t\t2、毕业设计论文查重\n" +
"\t\t\t\t3、毕业设计论文审查\n" +
"\t\t\t\t4、退出论文管理系统\n" +
"**********************************************************");
}
public static void upPaper(ArrayList<ScorInformation> array) {
System.out.println("***********************************************************\n" +
"\t\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版\n" +
"\t\t\t\t\t毕业设计论文提交\n" +
"***********************************************************\n" +
"\t\t 请输入学生学号:XXXXXXXX\n" +
"**********************************************************");
Scanner sc = new Scanner(System.in);
String id;
id = sc.nextLine();
while (id.length() != 8) {
System.out.println("请输入八位学号");
id = sc.nextLine();
}
boolean flag = false;
for (int i = 0; i < array.size() && flag == false; i++) {
//System.out.println("come in 1");
if (array.get(i).getStunumber().equals(id)) {
flag = true;
System.out.println(array.get(i).getStunumber() + "\t" + array.get(i).getName() + "\t" + array.get(i).getStuclass());
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版");
System.out.println("\t\t\t\t毕业设计论文提交");
System.out.println("***********************************************************");
System.out.println("\t\t\t 学生学号:" + array.get(i).getStunumber());
System.out.println("\t\t\t 学生姓名:" + array.get(i).getName());
System.out.println("\t\t\t 所在班级:" + array.get(i).getStuclass());
System.out.println("\t\t请输入毕业设计论文题目:XXXXXX XXXX");
System.out.println("***********************************************************");
String title;
title = sc.nextLine();
while (title.length() > 10) {
System.out.println("论文题目超出十个字符限制,请重新输入");
title = sc.nextLine();
}
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版");
System.out.println("\t\t\t\t毕业设计论文提交");
System.out.println("***********************************************************");
System.out.println("\t\t\t 学生学号:" + array.get(i).getStunumber());
System.out.println("\t\t\t 学生姓名:" + array.get(i).getName());
System.out.println("\t\t\t 所在班级:" + array.get(i).getStuclass());
System.out.println("\t\t\t毕业设计论文题目:" + title);
System.out.println("\t\t请输入毕业设计论文正文:XXXXXX XXXX XXXXXX XXXX \n" +
"\t\tXXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX \n" +
"\t\tXXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX \n" +
"\t\tXXXXXX XXXX XXXXXX XXXX XXXXXX XXXX XXXXXX \n" +
"\t\tXXXX XXXXXX XXXX XXXXXX XXXX XXXXXX XXXX");
System.out.println("***********************************************************");
String paperbody;
paperbody = sc.nextLine();
while (paperbody.length() > 200) {
System.out.println("论文主体超出两百个字符限制,请重新输入");
paperbody = sc.nextLine();
}
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版");
System.out.println("\t\t\t\t毕业设计论文提交");
System.out.println("***********************************************************");
System.out.println("\t\t\t 学生学号:" + array.get(i).getStunumber());
System.out.println("\t\t\t 学生姓名:" + array.get(i).getName());
System.out.println("\t\t\t 所在班级:" + array.get(i).getStuclass());
System.out.println("\t\t\t毕业设计论文题目:" + title);
System.out.println("\t\t\t毕业设计论文正文:" + paperbody);
System.out.println("\t\t该学生成绩已录入完毕,是否提交(Y/N)");
System.out.println("**********************************************************");
String ch;
ch = sc.nextLine();
if (ch.equals("Y")) {
ScorInformation s = new ScorInformation();
s.setPapertitle(title);
s.setPaperbody(paperbody);
s.setName(array.get(i).getName());
s.setStunumber(array.get(i).getStunumber());
s.setStuclass(array.get(i).getStuclass());
array.add(i,s);
} else {
upPaper(array);
}
}
}
if (flag == false) {
System.out.println("该学号不存在");
upPaper(array);
}
}
public static void search(ArrayList<ScorInformation> array) {
System.out.println("***********************************************************\n" +
"\t\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版\n" +
"\t\t\t\t\t毕业设计论文查重\n" +
"***********************************************************\n" +
"\t\t 请输入学生学号:XXXXXXXX\n" +
"**********************************************************");
Scanner s = new Scanner(System.in);
String id;
id = s.nextLine();
while (id.length() != 8) {
System.out.println("请输入八位学号");
id = s.nextLine();
}
for (int i = 0; i < array.size(); i++) {
if (array.get(i).getStunumber().equals(id)) {
System.out.println(array.get(i).getStunumber() + "\t" + array.get(i).getName() + "\t" + array.get(i).getStuclass());
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版");
System.out.println("\t\t\t\t毕业设计论文查重");
System.out.println("***********************************************************");
System.out.println("\t\t\t 学生学号:" + array.get(i).getStunumber());
System.out.println("\t\t\t 学生姓名:" + array.get(i).getName());
System.out.println("\t\t\t 所在班级:" + array.get(i).getStuclass());
System.out.println("\t\t\t毕业设计论文题目:" + array.get(i).getPapertitle());
System.out.println("\t\t\t毕业设计论文正文:" + array.get(i).getPaperbody());
System.out.println("**********************************************************");
System.out.println("\t\t\t请输入毕业设计论文查重率:XXX");
System.out.println("**********************************************************");
double sear;
sear = s.nextDouble();
while (sear > 1.0 || sear < 0.0) {
System.out.println("请输入0-1之间的查重率");
sear = s.nextInt();
}
array.get(i).setPaperpass(sear);
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版");
System.out.println("\t\t\t\t毕业设计论文查重");
System.out.println("***********************************************************");
System.out.println("\t\t\t 学生学号:" + array.get(i).getStunumber());
System.out.println("\t\t\t 学生姓名:" + array.get(i).getName());
System.out.println("\t\t\t 所在班级:" + array.get(i).getStuclass());
System.out.println("\t\t\t毕业设计论文题目:" + array.get(i).getPapertitle());
System.out.println("\t\t\t毕业设计论文正文:" + array.get(i).getPaperbody());
System.out.println("**********************************************************");
System.out.println("\t\t\t请输入毕业设计论文查重率:" + sear);
System.out.println("\t\t\t\t\t\t(Y/N)");
System.out.println("**********************************************************");
String choice;
choice = s.next();
if (choice.equals("Y")) {
//System.out.println("111111");
search(array);
}
else{
break;
}
}
}
}
public static void cha(ArrayList<ScorInformation> array) {
System.out.println("***********************************************************\n" +
"\t\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版\n" +
"\t\t\t\t\t毕业设计论文审查\n" +
"***********************************************************\n" +
"\t\t 请输入学生学号:XXXXXXXX\n" +
"**********************************************************");
Scanner sc = new Scanner(System.in);
String id;
id = sc.nextLine();
while (id.length() != 8) {
System.out.println("请输入八位学号");
id = sc.nextLine();
}
for (int i = 0; i < array.size(); i++) {
if (array.get(i).getStunumber().equals(id)) {
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版");
System.out.println("\t\t\t\t毕业设计论文审查");
System.out.println("***********************************************************");
System.out.println("\t\t\t 学生学号:" + array.get(i).getStunumber());
System.out.println("\t\t\t 学生姓名:" + array.get(i).getName());
System.out.println("\t\t\t 所在班级:" + array.get(i).getStuclass());
System.out.println("\t\t\t毕业设计论文题目:" + array.get(i).getPapertitle());
System.out.println("\t\t\t毕业设计论文正文:" + array.get(i).getPaperbody());
System.out.println("**********************************************************");
System.out.println("\t\t\t请输入毕业设计论文查重率:" + array.get(i).getPaperpass());
System.out.println("\t\t\t\t\t\t(Y/N)");
System.out.println("**********************************************************");
if (array.get(i).getPaperpass() >= 0.2) {
System.out.println("该学生毕业设计论文重复率超过20%,不允许进行论文审查");
cha(array);
} else {
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版");
System.out.println("\t\t\t\t毕业设计论文审查");
System.out.println("***********************************************************");
System.out.println("\t\t\t 学生学号:" + array.get(i).getStunumber());
System.out.println("\t\t\t 学生姓名:" + array.get(i).getName());
System.out.println("\t\t\t 所在班级:" + array.get(i).getStuclass());
System.out.println("\t\t\t毕业设计论文题目:" + array.get(i).getPapertitle());
System.out.println("\t\t\t毕业设计论文正文:" + array.get(i).getPaperbody());
System.out.println("**********************************************************");
System.out.println("\t\t\t请输入毕业设计论文查重率:" + array.get(i).getPaperpass());
System.out.println("\t\t是否同意该学生参加毕业设计答辩:(Y/N)");
System.out.println("**********************************************************");
String choice;
choice = sc.nextLine();
if (choice.equals("Y")) {
array.get(i).setPaperreview(true);
} else {
array.get(i).setPaperreview(false);
}
}
}

}
}
public static void main(String[] args) {
ArrayList<ScorInformation> array = new ArrayList<>();
ScorInformation s = new ScorInformation();
s.setName("辰逸");
s.setStuclass("信2005-2");
s.setStunumber("20200006");
//System.out.println(s.getStunumber());
s.setPaperbody("无");
s.setPaperpass(0);
s.setPaperreview(false);
s.setPapertitle("无");
array.add(s);
for (int i = 0; i < 4; i++) {
ScorInformation ss = new ScorInformation();
ss.setName("11");
ss.setStunumber("123");
ss.setStuclass("20204088");
ss.setPaperbody("无");
ss.setPaperpass(0);
ss.setPaperreview(false);
ss.setPapertitle("测试");
array.add(ss);
}
while (true) {
show();
int choice;
Scanner sc = new Scanner(System.in);
choice = sc.nextInt();
switch (choice) {
case 1:
//System.out.println(array.get(0).getStunumber());
upPaper(array);
break;
case 2:
search(array);
break;
case 3:
cha(array);
break;
case 4:
System.out.println("***********************************************************\n" +
"石家庄铁道大学软件工程系毕业设计论文管理系统2021版\n" +
"制作人:辰逸\n" +
"***********************************************************");
System.exit(0);
break;
}
}
}
}

1主界面方法; 2毕业设计论文提交方法; 3毕业设计论文查重方法 ; 4毕业设计论文审查方法; 5退出系统方法。

posted on 2021-09-18 20:36  辰逸1  阅读(45)  评论(0编辑  收藏  举报