package C0;
public
class ScoreInformation { String stunumber; String name; String stuclass; String papertitle; String paperbody; double paperpass; 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 stunumber) { this.stunumber=stunumber; } public String getStunumber() { return stunumber; } public void setName(String name) { this.name=name; } public String getName() { return name; } public void setStuclass(String stuclass) { this.stuclass=stuclass; } public String getStuclass() { return stuclass; } public void setPapertitle(String papertitle) { this.papertitle=papertitle; } public String getPapertitle() { return papertitle; } public void setPaperbody(String paperbody) { this.paperbody=paperbody; } public String getPaperbody() { return paperbody; } public void setPaperpass(double paperpass) { this.paperpass=paperpass; } public double getPaperpass() { return paperpass; } public void setPaperreview(boolean paperreview) { this.paperreview=paperreview; } public boolean getPaperreview() { return paperreview; } } /* *执行类 */ package T005; import java.util.Scanner; import java.util.ArrayList; public class PaperManagement { public static void main(String[] args) { /* * 利用集合存储学生信息 */ ArrayList<ScoreInformation> paper = new ArrayList<ScoreInformation>();//创建集合 /* * 不断加入学生对象 */ ScoreInformation s1 = new ScoreInformation(); s1.setStunumber("20203906"); s1.setName("杨旭"); s1.setStuclass("信2005-1班"); paper.add(s1); ScoreInformation s2 = new ScoreInformation(); s2.setStunumber("20203907"); s2.setName("刘华宇"); s2.setStuclass("信2005-1班"); paper.add(s2); ScoreInformation s3 = new ScoreInformation(); s3.setStunumber("20203908"); s3.setName("刘柏"); s3.setStuclass("信2005-1班"); paper.add(s3); ScoreInformation s4 = new ScoreInformation(); s4.setStunumber("20203909"); s4.setName("王凯"); s4.setStuclass("信2005-1班"); paper.add(s4); ScoreInformation s5 = new ScoreInformation(); s5.setStunumber("20203910"); s5.setName("杨枭"); s5.setStuclass("信2005-1班"); paper.add(s5); while(true)//只有输入4的时候才停止 { Scanner sc = new Scanner(System.in); 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("***********************************************************"); System.out.println("请输入你的操作:"); int t = sc.nextInt(); switch(t) { case 1: paperSubmission(paper);//论文提交 break; case 2: paperPass(paper);//论文查重 break; case 3: paperReview(paper);//论文审查 break; case 4://退出系统 System.out.println("***********************************************************"); System.out.println(" 石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println(" 制作人:杨旭 "); System.out.println("***********************************************************"); System.exit(0); default:System.out.println("该选项不存在"); } } } /* * 论文提交 */ public static void paperSubmission(ArrayList<ScoreInformation> paper) { Scanner sc = new Scanner(System.in); String title="";//创建一个变量存论文题目 String ss ="";//创建一个变量存论文体 ArrayList<String> body = new ArrayList<>();//为了写论文体时输入END时,结束输入 ScoreInformation s= sidCheckSubmission(paper);//调用查找学号函数,返回与输入的学号对应的学生对象 while(true) { String t = ""; while(true) { System.out.print("\t\t请输入毕业设计论文题目:" ); title = sc.nextLine(); System.out.println("***********************************************************"); if(title.length()<=10)//当题目的字符数小于10退出,否则重新输入题目 { break; } } while(true) { System.out.print("\t请输入毕业设计论文正文:" ); while(!"END".equals(ss = sc.nextLine()))//当输入END时退出论文输入 { body.add(ss); } ss="";//重置ss for(int i=0;i<body.size();i++) { ss+=body.get(i);//将论文体存到ss中,便于后面存到学生信息中 } if(body.size()<=200)//结束条件 { break; } } showInformation(s);//调用函数显示学生信息 System.out.println("\t\t毕业设计论文题目:" + title); System.out.print("毕业设计论文正文:"); for(int i=0;i<body.size();i++) { System.out.print(body.get(i)); } System.out.println(); System.out.println("学生成绩已录入完毕,是否提交(Y/N)"); t = sc.nextLine(); System.out.println("***********************************************************"); if(t.equals("Y")) //判断输入的是否时Y,输入Y时将上面输入的论文题目和正文存储到学生信息中并退出循环 { s.setPapertitle(title); s.setPaperbody(ss); break; } } } /* * 论文查重 */ public static void paperPass(ArrayList<ScoreInformation> paper) { Scanner sc = new Scanner(System.in); double pass=0; while(true) { ScoreInformation s = sidCheckPaperpass(paper); System.out.print("\t\t请输入毕业设计论文查重率:"); pass = sc.nextDouble(); while(pass>=1||pass<0)//确保查重率在范围内,否则继续输入 { System.out.print("你输入的查重率不对,请重新输入毕业设计论文查重率:"); pass = sc.nextDouble(); } //显示学生信息 showInformation(s); System.out.println("\t毕业设计论文题目:" + s.getPapertitle()); System.out.println("毕业设计论文正文:" + s.getPaperbody()); System.out.println("\t\t毕业设计查重率:" + pass ); System.out.println("\t\t\t(Y/N)"); String t = sc.nextLine(); System.out.println("***********************************************************"); if(t.equals("Y"))//输入Y时存储学生信息 { s.setPaperpass(pass); break; } } } /* * 论文审查 */ public static void paperReview(ArrayList<ScoreInformation> paper) { Scanner sc = new Scanner(System.in); boolean review = false; while(true) { boolean flag = false;//当flag==true时,返回主页面 ScoreInformation s = sidCheckPaperreview(paper); if(s.getPaperpass()>=0.2)//当查重率>0.2不进行审查,返回论文审查页面 { System.out.println("该学生毕业设计论文重复率超过20%,不允许进行论文审查"); }else { while(true) { showInformation(s); System.out.println("毕业设计论文正文:" + s.getPaperbody()); System.out.println("\t\t毕业设计论文查重率:" + s.getPaperpass()); System.out.println("***********************************************************"); System.out.println("是否同意该学生参加毕业设计答辩:(Y/N)"); String t = sc.nextLine(); if(t.equals("Y"))//存储并继续输入学生学号,进行下一个学生的审查 { review=true; s.setPaperreview(review); break; }else {//存储学生信息返回主页面 flag = true; review=false; s.setPaperreview(review); break; } } } if(flag) break; } } /* *在论文提交中检查学号是否正确 */ public static ScoreInformation sidCheckSubmission(ArrayList<ScoreInformation> paper) { Scanner sc = new Scanner(System.in); ScoreInformation ss = new ScoreInformation(); boolean flag = false; while(true) { System.out.println("***********************************************************"); System.out.println("\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println("\t\t\t毕业设计论文提交 "); System.out.println("***********************************************************"); System.out.print(" 请输入学生学号:" ); String sid = sc.nextLine(); System.out.println("***********************************************************"); for(int i=0;i<paper.size();i++)//将每一个学生的学号与输入的学号对比 { ScoreInformation s = paper.get(i); if(sid.equals(s.getStunumber())) { ss=s; System.out.println("***********************************************************"); System.out.println("\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println("\t\t\t毕业设计论文提交 "); System.out.println("***********************************************************"); System.out.println("\t\t学生学号:" + s.getStunumber()); System.out.println("\t\t学生姓名:" + s.getName()); System.out.println("\t\t所在班级:" + s.getStuclass()); flag = true; break; } } if(flag) { return ss;//将当前学生返回 }else { System.out.println("该学号不存在");//继续执行循环,输入学号 } } } /* 在论文查重中检查学号是否正确 */ public static ScoreInformation sidCheckPaperpass(ArrayList<ScoreInformation> paper) { Scanner sc = new Scanner(System.in); ScoreInformation ss = new ScoreInformation(); boolean flag = false; while(true) { System.out.println("***********************************************************"); System.out.println("\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println("\t\t\t毕业设计论文查重 "); System.out.println("***********************************************************"); System.out.print(" 请输入学生学号:" ); String sid = sc.nextLine(); System.out.println("***********************************************************"); for(int i=0;i<paper.size();i++) { ScoreInformation s = paper.get(i); if(sid.equals(s.getStunumber())) { ss=s; System.out.println("***********************************************************"); System.out.println("\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println("\t\t\t毕业设计论文查重 "); System.out.println("***********************************************************"); System.out.println("\t\t学生学号:" + s.getStunumber()); System.out.println("\t\t学生姓名:" + s.getName()); System.out.println("\t\t所在班级:" + s.getStuclass()); System.out.println("\t毕业设计题目:" + s.getPapertitle()); System.out.println("毕业设计论文正文:" + s.getPaperbody()); flag = true; break; } } if(flag) { return ss; }else { System.out.println("该学号不存在"); } } } /* * 在论文审查中检查学号是否正确 */ public static ScoreInformation sidCheckPaperreview(ArrayList<ScoreInformation> paper) { Scanner sc = new Scanner(System.in); ScoreInformation ss = new ScoreInformation(); boolean flag = false; while(true) { System.out.println("***********************************************************"); System.out.println("\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println("\t\t\t毕业设计论文审查 "); System.out.println("***********************************************************"); System.out.print(" 请输入学生学号:" ); String sid = sc.nextLine(); System.out.println("***********************************************************"); for(int i=0;i<paper.size();i++) { ScoreInformation s = paper.get(i); if(sid.equals(s.getStunumber())) { ss=s; System.out.println("***********************************************************"); System.out.println("\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println("\t\t\t毕业设计论文审查 "); System.out.println("***********************************************************"); System.out.println("\t\t学生学号:" + s.getStunumber()); System.out.println("\t\t学生姓名:" + s.getName()); System.out.println("\t\t所在班级:" + s.getStuclass()); System.out.println("\t毕业设计题目:" + s.getPapertitle()); System.out.println("毕业设计论文正文:" + s.getPaperbody()); System.out.println("\t\t毕业设计论文查重率:" + s.getPaperpass()); System.out.println("***********************************************************"); flag = true; break; } } if(flag) { return ss; }else { System.out.println("该学号不存在"); } } } /* * 显示学生信息 */ public static void showInformation(ScoreInformation s) { System.out.println("***********************************************************"); System.out.println("\t石家庄铁道大学软件工程系毕业设计论文管理系统2021版 "); System.out.println("\t\t\t毕业设计论文提交 "); System.out.println("***********************************************************"); System.out.println("\t\t学生学号:" + s.getStunumber()); System.out.println("\t\t学生姓名:" + s.getName()); System.out.println("\t\t所在班级:" + s.getStuclass()); } }