开学测试

public class Student {
private String stunumber;
private String name;
private double mathematicsscore;
private double englishiscore ;
private double networkscore;
private double databasescore;
private double softwarescore;
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 double getMathematicsscore() {
    return mathematicsscore;
}
public void setMathematicsscore(double mathematicsscore) {
    this.mathematicsscore = mathematicsscore;
}
public double getEnglishiscore() {
    return englishiscore;
}
public void setEnglishiscore(double englishiscore) {
    this.englishiscore = englishiscore;
}
public double getNetworkscore() {
    return networkscore;
}
public void setNetworkscore(double networkscore) {
    this.networkscore = networkscore;
}
public double getDatabasescore() {
    return databasescore;
}
public void setDatabasescore(double databasescore) {
    this.databasescore = databasescore;
}
public double getSoftwarescore() {
    return softwarescore;
}
public void setSoftwarescore(double softwarescore) {
    this.softwarescore = softwarescore;
}

}
  1 import java.util.Scanner;
  2 public class Test {
  3      static int z = 0;
  4     public static void Show() {
  5         System.out.println("***********************************************************
" + 
  6                 "石家庄铁道大学软件工程系
" + 
  7                 "学生学籍管理系统 2019 版
" + 
  8                 "***********************************************************
" + 
  9                 "1、 学生考试成绩录入
" + 
 10                 "2、 学生考试成绩修改
" + 
 11                 "3、 计算学生成绩绩点
" + 
 12                 "4、退出学籍管理系统
" + 
 13                 "**********************************************************");    
 14     }
 15     public static void Show1() {
 16         System.out.println("***********************************************************
" + 
 17                 "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
 18                 "学生考试成绩录入
" + 
 19                 "***********************************************************
" + 
 20                 "请输入学生学号:
" + 
 21                 "**********************************************************");
 22     } 
 23     public static void tuichu() {
 24         System.out.println("***********************************************************
" + 
 25                 "谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
 26                 "制作人:杨雄豪
" + 
 27                 "***********************************************************");
 28     } 
 29     public static int chazhao( Student b[],int s) {
 30         Scanner a =new Scanner(System.in);
 31         String stunumber = a.next();
 32         int k=0;
 33         for(int j=0;j<5;j++) {
 34                 if(stunumber.equals(b[j].getStunumber())) {
 35                     k=j;
 36                 }else {
 37              continue;
 38 }
 39                 }
 40         s=k;
 41         return s;
 42     }
 43     public static void show2() {
 44         System.out.println("***********************************************************
" + 
 45                 "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
 46                 "学生考试成绩修改界面
" + 
 47                 "***********************************************************
" + 
 48                 "请输入学生学号:
" + 
 49                 "**********************************************************");
 50         
 51     }
 52     public static void show3() {
 53         System.out.println("在主界面选择计算学生成绩绩点功能后,进入计算学生成绩绩点界面,
" + 
 54                 "如下图所示:
" + 
 55                 "***********************************************************
" + 
 56                 "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
 57                 "学生考试成绩绩点计算界面
" + 
 58                 "***********************************************************
" + 
 59                 "请输入学生学号:
" + 
 60                 "**********************************************************");
 61     }
 62       public static double jisuanjidian(double x)
 63         {
 64             double jd=0.0;
 65             if(x<60)
 66             ;
 67             if(x>=60&&x<=63.9)
 68                 jd=1.0;
 69             if(x>=64&&x<=65.9)
 70                 jd=1.5;
 71             if(x>=66&&x<=67.9)
 72                 jd=1.7;
 73             if(x>=68&&x<=71.9)
 74                 jd=2.0;
 75             if(x>=72&&x<=74.9)
 76                 jd=2.3;
 77             if(x>=75&&x<=77.9)
 78                 jd=2.7;
 79             if(x>=78&&x<=81.9)
 80                 jd=3.0;
 81             if(x>=82&&x<=84.9)
 82                 jd=3.3;
 83             if(x>=85&&x<=89.9)
 84                 jd=3.7;
 85             if(x>=90)
 86                 jd=4.0;
 87             return jd;
 88             
 89         }
 90 public static void main(String[] args) {
 91     Scanner a =new Scanner(System.in);
 92     Show();
 93     Student[] b=new Student[1000];
 94     b[0]=new Student();
 95     b[1]=new Student();
 96     b[2]=new Student();
 97     b[3]=new Student();
 98     b[4]=new Student();
 99     b[0].setName("杨一");
100     b[0].setStunumber("20183557");
101     b[1].setName("李二");
102     b[1].setStunumber("20183558");
103     b[2].setName("张三");
104     b[2].setStunumber("20183559");
105     b[3].setName("王四");
106     b[3].setStunumber("20183551");
107     b[4].setName("豆五");
108     b[4].setStunumber("20183552");
109  
110     int over=1;
111    while(over==1) {
112        System.out.println("请输入服务项目:");
113     int i = a.nextInt();
114 
115 switch(i) {
116 case 1: //录入信息
117     int sum=5;
118     while(sum==5) {
119         Show1();
120          z=chazhao(b,z);
121             if(z==4) {
122                 System.out.println("该学号不存在,"
123                         + "按下任意键重新输入。。。");
124                 break;//提示学号不存在,并跳出循环,重新输入!
125             }
126             else {
127                     System.out.println("***********************************************************
" + 
128                             "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
129                             "学生考试成绩录入界面
" + 
130                             "***********************************************************
" + 
131                             "学生学号:" + b[z].getStunumber() +"
" +
132                             "学生姓名:" + b[z].getName() +"
" +
133                             "**********************************************************");
134                             System.out.println("请输入高等数学成绩:");
135                             double mathematicsscore = a.nextDouble();
136                             b[z].setMathematicsscore(mathematicsscore);
137                             System.out.println("请输入大学英语成绩:");
138                             double  englishiscore = a.nextDouble();
139                             b[z].setEnglishiscore(englishiscore);
140                             System.out.println("请输入计算机网络成绩:");
141                             double networkscore = a.nextDouble();
142                             b[z].setNetworkscore(networkscore);
143                             System.out.println("请输入数据库成绩:");
144                             double  databasescore = a.nextDouble();
145                             b[z].setDatabasescore(databasescore);
146                             System.out.println("请输入软件工程成绩:");
147                             double softwarescore = a.nextDouble();
148                             b[z].setSoftwarescore(softwarescore) ;
149             }
150             System.out.println("***********************************************************
" + 
151                     "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
152                     "学生考试成绩录入界面
" + 
153                     "***********************************************************
" + 
154                     "学生学号:" + b[z].getStunumber() +"
" +
155                     "学生姓名:" + b[z].getName() +"
" +
156                             "高等数学成绩:" + b[z].getMathematicsscore() + "
" + 
157                             "大学英语成绩:" + b[z].getEnglishiscore() + "
" +
158                             "计算机网络成绩:" + b[z].getNetworkscore() + "
" +
159                             "数据库成绩:" + b[z].getDatabasescore() + "
" +
160                             "软件工程成绩:" +  b[z].getSoftwarescore() + "
" +
161                             "该学生成绩已录入完毕,是否提交(Y/N)
"  +
162                             "**********************************************************");
163             if(z<4) {
164                 String dome = a.next();
165             if(dome .equals("Y")) {
166                 System.out.println("成绩成绩已经录入!");
167                 break;
168             }
169             else
170             {
171                 b[z].setMathematicsscore(0);
172                 b[z].setEnglishiscore(0);
173                 b[z].setNetworkscore(0);
174                  b[z].setDatabasescore(0);
175                  b[z].setSoftwarescore(0) ;
176             }}break;}
177          break;
178 case 2: show2();
179 z = chazhao(b,z);
180 Double e=b[z].getMathematicsscore();
181 Double f=b[z].getEnglishiscore();
182 Double g=b[z].getNetworkscore();
183 Double h=b[z].getDatabasescore();
184 Double m=b[z].getSoftwarescore();
185 System.out.println("***********************************************************
" + 
186         "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
187         "学生考试成绩录入
" + 
188         "***********************************************************
" + 
189         "学生学号:" + b[z].getStunumber() +"
" +
190         "学生姓名:" + b[z].getName() +"
" +
191         "1、高等数学成绩:" + b[z].getMathematicsscore()+"
" +
192         "2、大学英语成绩:" + b[z].getEnglishiscore() +"
"+
193         "3、计算机网络成绩:" + b[z].getNetworkscore() +"
"+
194         "4、数据库成绩:" + b[z].getDatabasescore()  +"
"+
195         "5、软件工程成绩:" +  b[z].getSoftwarescore() +"
"+
196         "**********************************************************");
197 System.out.println("请输入修改项前面的序号:");
198  int l = a.nextInt();
199  switch(l) {
200  case 1:
201      System.out.println("***********************************************************
" + 
202              "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
203              "学生考试成绩录入界面
" + 
204              "***********************************************************
" + 
205                     "学生学号:" + b[z].getStunumber() +"
" +
206                     "学生姓名:" + b[z].getName() +"
" +
207              "请输入修改后高等数学成绩:
" + 
208              "**********************************************************");
209      double loge1 = a.nextDouble();
210      b[z].setMathematicsscore(loge1);break;
211  case 2:
212      System.out.println("***********************************************************
" + 
213                  "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
214                  "学生考试成绩录入界面
" + 
215                  "***********************************************************
" + 
216                         "学生学号:" + b[z].getStunumber() +"
" +
217                         "学生姓名:" + b[z].getName() +"
" +
218                  "请输入修改后大学英语成绩:
" + 
219                  "**********************************************************");
220      double loge2 = a.nextDouble();
221      b[z].setEnglishiscore(loge2);break;
222  case 3:
223      System.out.println("***********************************************************
" + 
224                  "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
225                  "学生考试成绩录入界面
" + 
226                  "***********************************************************
" + 
227                         "学生学号:" + b[z].getStunumber() +"
" +
228                         "学生姓名:" + b[z].getName() +"
" +
229                  "请输入修改后计算机网络成绩:
" + 
230                  "**********************************************************");
231      double loge3 = a.nextDouble();
232      b[z].setNetworkscore(loge3);break;
233  case 4:
234      System.out.println("***********************************************************
" + 
235                  "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
236                  "学生考试成绩录入界面
" + 
237                  "***********************************************************
" + 
238                         "学生学号:" + b[z].getStunumber() +"
" +
239                         "学生姓名:" + b[z].getName() +"
" +
240                  "请输入修改后数据库成绩:
" + 
241                  "**********************************************************");
242      double loge4 = a.nextDouble();
243      b[z].setDatabasescore(loge4);break;
244  case 5:
245      System.out.println("***********************************************************
" + 
246                  "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
247                  "学生考试成绩录入界面
" + 
248                  "***********************************************************
" + 
249                         "学生学号:" + b[z].getStunumber() +"
" +
250                         "学生姓名:" + b[z].getName() +"
" +
251                  "请输入修改后软件工程成绩:
" + 
252                  "**********************************************************");
253      double loge5 = a.nextDouble();
254      b[z].setSoftwarescore(loge5) ;break;
255  }
256  System.out.println("***********************************************************
" + 
257          "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
258          "学生考试成绩录入
" + 
259          "***********************************************************
" + 
260         "学生学号:" + b[z].getStunumber() +"
" +
261         "学生姓名:" + b[z].getName() +"
" +
262         "1、高等数学成绩:" + b[z].getMathematicsscore()+"
" +
263         "2、大学英语成绩:" + b[z].getEnglishiscore() +"
"+
264         "3、计算机网络成绩:" + b[z].getNetworkscore() +"
"+
265         "4、数据库成绩:" + b[z].getDatabasescore()  +"
"+
266         "5、软件工程成绩:" +  b[z].getSoftwarescore() +"
"+
267          "该学生成绩已修改完毕,是否提交(Y/N)
" + 
268          "**********************************************************");
269     if(z<4) {
270         String dome = a.next();
271     if(dome .equals("Y")) {
272         System.out.println("成绩成绩已经修改!");
273         break;
274     }
275     else
276     {
277          b[z].setMathematicsscore(e);
278          b[z].setEnglishiscore(f);
279          b[z].setNetworkscore(g);
280          b[z].setDatabasescore(h);
281          b[z].setSoftwarescore(m) ;     
282     }
283     }break;
284 case 3:show3();
285 z=chazhao(b,z);
286 double sum1=0;
287 double sum2=0;
288 sum1=Math.round(b[z].getMathematicsscore()*jisuanjidian(b[z].getMathematicsscore())+b[z].getEnglishiscore()*jisuanjidian(b[z].getEnglishiscore())+b[z].getNetworkscore()*jisuanjidian(b[z].getNetworkscore())+b[z].getDatabasescore()*jisuanjidian(b[z].getDatabasescore())+b[z].getSoftwarescore()*jisuanjidian(b[z].getSoftwarescore()));
289 sum2=Math.round(sum1/16);
290 if(sum2<2) {
291     System.out.println("***********************************************************
" + 
292             "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
293             "学生考试成绩绩点计算界面
" + 
294             "***********************************************************
" + 
295             "学生学号:20183557
" + 
296             "学生姓名:杨雄豪
" + 
297             "1、高等数学成绩绩点:" + jisuanjidian(b[z].getMathematicsscore()) +"
" +
298             "2、大学英语成绩绩点:XXX
" + jisuanjidian(b[z].getEnglishiscore()) +"
" +
299             "3、计算机网络成绩绩点:XXX
" + jisuanjidian(b[z].getNetworkscore()) +"
" +
300             "4、数据库成绩绩点:XXX
" +jisuanjidian(b[z].getDatabasescore()) +"
" +
301             "5、软件工程成绩绩点:XXX
" + jisuanjidian(b[z].getSoftwarescore()) +"
" +
302             "你的平均学分绩点为:" + jisuanjidian(sum2) + "
" +
303             "提示信息:你未达到毕业要求!
" +
304             "是否返回系统主界面:(Y/N)
" + 
305             "**********************************************************");
306 }else {
307     System.out.println("***********************************************************
" + 
308             "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
" + 
309             "学生考试成绩绩点计算界面
" + 
310             "***********************************************************
" + 
311             "学生学号:20183557
" + 
312             "学生姓名:杨雄豪
" + 
313             "1、高等数学成绩绩点:" + jisuanjidian(b[z].getMathematicsscore()) +"
" +
314             "2、大学英语成绩绩点:" + jisuanjidian(b[z].getEnglishiscore()) +"
" +
315             "3、计算机网络成绩绩点:" + jisuanjidian(b[z].getNetworkscore()) +"
" +
316             "4、数据库成绩绩点:" +jisuanjidian(b[z].getDatabasescore()) +"
" +
317             "5、软件工程成绩绩点:" + jisuanjidian(b[z].getSoftwarescore()) +"
" +
318             "你的平均学分绩点为:" + sum2 + "
" +
319             "提示信息:你已经达到毕业要求!
" +
320             "是否返回系统主界面:(Y/N)
" + 
321             "**********************************************************");
322 }
323     String dome = a.next();
324 if(dome .equals("Y")) {
325     break;
326 }
327 else
328 {
329     b[z].setMathematicsscore(0);
330     b[z].setEnglishiscore(0);
331     b[z].setNetworkscore(0);
332      b[z].setDatabasescore(0);
333      b[z].setSoftwarescore(0) ;
334 }break;
335 case 4:tuichu();over=0;break;
336    default:System.out.println("您输入的信息有误");
337     Show();
338     break;
339     }
340 }
341 }
342 }
功能的实现需要将其分解成各个方法,比如其中两项功能中需要的查找位置函数我就在主函数钱定义为chaxun()这样可以更方便快捷的查找到相应的位置,以及后面的计算绩点分数也编写了一个jisuanjidian()的方法,还有最后的退出,以及很多的输出格式。
下面我列出其中的测试截图:
成绩录入:


 信息修改:

计算绩点:

退出:









 
原文地址:https://www.cnblogs.com/yangxionghao/p/11514876.html