• Java学生成绩系统


    package text;
    public class helloworld{
    	private String stunumber;
    	private String name;
    	private double mathematicsscore;
    	private double englishiscore;
    	private double networkscore;
    	private double databasescore;
    	private double softwarescore;
    	public helloworld() {}
    	public helloworld(String stunumber,String name,double mathematicsscore,double englishiscore,double networkscore,double databasescore,double softwarescore)
    	{
    		this.stunumber=stunumber;
    		this.name=name;
    		this.mathematicsscore=mathematicsscore;
    		this.englishiscore=englishiscore;
    		this.networkscore=networkscore;
    		this.databasescore=databasescore;
    		this.softwarescore=softwarescore;
    	}
    	public String getstunumber() {
    		return stunumber;
    	}
    	public void setstunumber(String a) {
    		stunumber=a;
    	}
    	public String getname() {
    		return name;
    	}
    	public void setname(String a) {
    		name=a;
    	}
    	public Double getmathematicsscore() {
    		return mathematicsscore;
    	}
    	public void setmathematicsscore(double a) {
    		mathematicsscore=a;
    	}
    	public Double getenglishiscore() {
    		return englishiscore;
    	}
    	public void setenglishiscore(double a) {
    		englishiscore=a;
    	}
    	public Double getnetworkscore() {
    		return networkscore;
    	}
    	public void setnetworkscore(double a) {
    		networkscore=a;
    	}
    	public Double getdatabasescore() {
    		return databasescore;
    	}
    	public void setdatabasescore(double a) {
    		databasescore=a;
    	}
    	public Double getsoftwarescore() {
    		return softwarescore;
    	}
    	public void setsoftwarescore(double a) {
    		softwarescore=a;
    	}
    }
    package text;
    import java.util.Scanner;
    //姓名 冯静妃   学号 20183610   班级 信1805-3班
    public class ScoreManagement {
    	public static void  main(String[] args) {
    		Scanner a = new Scanner(System.in);
    		// 定义数组预存五个学生的姓名以及学号;
    		helloworld[] stu = new helloworld[5];
    		stu[0] = new helloworld("20183606", "晏雯慧",0,0,0,0,0);
    		stu[1] = new helloworld("20183607", "徐娇美",2,2,2,2,2);
    		stu[2] = new helloworld("20183608", "杨一帆",3,3,3,3,3);
    		stu[3] = new helloworld("20183609", "胡海靖",4,4,4,4,4);
    		stu[4] = new helloworld("20183610", "冯静妃",5,5,5,5,5);
    		show(stu);
    	}
    	public static void show(helloworld[] stu) {//show函数显示主页面
    		System.out.println("****************************************");
    		System.out.println("       石家庄铁道大学软件工程系           ");
    		System.out.println("      学生学籍管理系统2019班版");
    		System.out.println("****************************************");
    		System.out.println("      1.学生老师成绩录入        ");
    		System.out.println("      2.学生考试成绩修改        ");
    		System.out.println("      3.计算学生成绩绩点        ");
    		System.out.println("      4.退出学籍管理系统        ");
    		System.out.println("*****************************************");
    		Scanner a = new Scanner(System.in);// 输入选项
    		int choice = a.nextInt();
    		switch(choice) {
    			case 1:add(stu);break;//考试成绩录入
    			case 2:change(stu);break;//考试成绩修改
    			case 3:jisuan(stu);break;//计算学生成绩
    			case 4:finish();break;//退出系统
    			default:
    			{
    				System.out.println("信息错误,该选项不存在");
    				show(stu);
    				break;
    			}
    		}
    	}
    	public static void add(helloworld[] stu) {//学生信息的录入
    		System.out.println("****************************************");
    		System.out.println("   石家庄铁道大学软件工程系学生学籍管理系统2019版      ");
    		System.out.println("          学生考试成绩录入界面           ");
    		System.out.println("****************************************");
    		System.out.print("         学生学号:        ");
    		Scanner sd = new Scanner(System.in);
    		String number = sd.nextLine();
    		int flag = 0,i;
    		for (i = 0; i < 5; i++)
    		{
    			if (number.equals(stu[i].getstunumber()))
    			{
    		System.out.println("*********************************************");
    				System.out.println("     石家庄铁道大学软件工程系学生学籍管理系统 2019 版   ");
    				System.out.println("     学生学号:"+stu[i].getstunumber()   );
    				System.out.println("     学生姓名:"+stu[i].getname()      );
    				System.out.println("     请输入高等数学成绩:"     );
    				System.out.println("***********************************************");
    				double math = sd.nextDouble();
    				System.out.println(stu[i].getname() + "的高数成绩是:" + math);
    				System.out.print("请输入该生的英语成绩");
    				double english = sd.nextDouble();
    				System.out.println(stu[i].getname() + "的英语成绩是:" + english);
    				System.out.print("请输入该生的计算机网络成绩");
    				double network = sd.nextDouble();
    				System.out.println(stu[i].getname() + "的计算机网络成绩是:" + network);
    				System.out.print("请输入该生的数据库成绩");
    				double data = sd.nextDouble();
    				System.out.println(stu[i].getname() + "的数据库成绩是:" + data);
    				System.out.print("请输入该生的软件成绩");
    				double soft = sd.nextDouble();
    				System.out.println("********************************************");
    				System.out.println("    石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
    				System.out.println("     学生姓名:"+stu[i].getname());
    				System.out.println("      高等数学成绩:"+math);
    				System.out.println("      大学英语成绩:"+english);
    				System.out.println("      计算机网络成绩:"+network);
    				System.out.println("      数据库成绩:"+data);
    				System.out.println("      软件工程成绩:"+soft);
    				System.out.print("     该学生成绩已录入完毕,是否提交(Y/N)");
    				System.out.println("**********************************************");
    				if (sd.next().equals("Y"))
    				{
    					stu[i].setenglishiscore(english);
    					stu[i].setmathematicsscore(math);
    					stu[i].setdatabasescore(data);
    					stu[i].setnetworkscore(network);
    					stu[i].setsoftwarescore(soft);
    					show(stu);
    				} else
    				{
    					System.out.println("返回录入页面");
    					add(stu);
    				}
    				flag = 1;
    			}
    		}
    		// 如果没有该学生信息,提示重新输入。
    		if (flag == 0)
    		{
    			System.out.println("该学号不存在,请重新输入");
    			add(stu);
    		}
    	}
    	public static void change(helloworld[] stu)//学生成绩修改
    	{
    		Scanner a = new Scanner(System.in);
    		System.out.println("******************************************");
    		System.out.println("石家庄铁道大学软件工程系学生学籍管理系统2019版");
    		System.out.println("学生考试成绩修改页面");
    		System.out.println("*******************************************");
    		System.out.print("请输入学生学号:");
    		String number = a.nextLine();
    		int flag = 0;
    		for (int i = 0; i < 5; i++)
    		{
    			if (stu[i].getstunumber().equals(number))
    			{
    				System.out.println("***********************************************");
    				System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
    				System.out.println("学生考试成绩录入");
    		System.out.println("*************************************************");
    				System.out.println("    学生学号:"+stu[i].getstunumber());
    				System.out.println("    学生姓名:"+stu[i].getname());
    				System.out.println("    1、高等数学成绩:"+stu[i].getmathematicsscore());
    				System.out.println("    2、大学英语成绩:" + stu[i].getenglishiscore());
    				System.out.println("    3、计算机网络成绩:" + stu[i].getnetworkscore());
    				System.out.println("    4、数据库成绩:" + stu[i].getdatabasescore());
    				System.out.println("    5、软件工程成绩:" + stu[i].getsoftwarescore());
    				System.out.println("**************************************************");
    				int select = a.nextInt();
    				double chang=0;
    				switch (select)
    				{
    				case 1:
    					System.out.println("       学生考试成绩录入界面             ");
    					System.out.println("*****************************************");
    					System.out.println("         学生学号:"+stu[i].getstunumber());
    					System.out.println("         学生姓名:"+stu[i].getname());
    					System.out.print("         请输入修改后的高数成绩:");
    					chang=a.nextDouble();
    					System.out.println("********************************************************");
    					System.out.println("         石家庄铁道大学软件工程系学生学籍管理系统                     ");
    					System.out.println("*********************************************************");
    					System.out.println("     学生学号:"+stu[i].getstunumber());
    					System.out.println("     学生姓名:"+stu[i].getname());
    					System.out.println("     1、高等数学成绩:"+chang);
    					System.out.println("     2、大学英语成绩:" + stu[i].getenglishiscore());
    					System.out.println("     3、计算机网络成绩:" + stu[i].getnetworkscore());
    					System.out.println("     4、数据库成绩:" + stu[i].getdatabasescore());
    					System.out.println("     5、软件工程成绩:" + stu[i].getsoftwarescore());
    					System.out.println("********************************************************");
    					System.out.print("     该学生成绩已修改完毕,是否提交(Y/N)");
    					System.out.println("**********************************************************");
    					if(a.next().equals("Y")) {
    						stu[i].setmathematicsscore(chang);
    						show(stu);
    					}
    					else {
    						change(stu);
    					}
    					break;
    				case 2:
    					System.out.println("       学生考试成绩录入界面             ");
    					System.out.println("*****************************************");
    					System.out.println("         学生学号:"+stu[i].getstunumber());
    					System.out.println("         学生姓名:"+stu[i].getname());
    					System.out.print("         请输入修改后的大学英语成绩:");
    					chang=a.nextDouble();
    					System.out.println("********************************************************");
    					System.out.println("         石家庄铁道大学软件工程系学生学籍管理系统                     ");
    					System.out.println("*********************************************************");
    					System.out.println("     学生学号:"+stu[i].getstunumber());
    					System.out.println("     学生姓名:"+stu[i].getname());
    					System.out.println("     1、高等数学成绩:"+stu[i].getmathematicsscore());
    					System.out.println("     2、大学英语成绩:" + chang);
    					System.out.println("     3、计算机网络成绩:" + stu[i].getnetworkscore());
    					System.out.println("     4、数据库成绩:" + stu[i].getdatabasescore());
    					System.out.println("     5、软件工程成绩:" + stu[i].getsoftwarescore());
    					System.out.println("********************************************************");
    					System.out.println("     该学生成绩已修改完毕,是否提交(Y/N)");
    					System.out.println("**********************************************************");
    					if(a.next().equals("Y")) {
    						stu[i].setenglishiscore(chang);
    						show(stu);
    					}
    					else {
    						change(stu);
    					}
    					break;
    				case 3:
    					System.out.println("       学生考试成绩录入界面             ");
    					System.out.println("*****************************************");
    					System.out.println("         学生学号:"+stu[i].getstunumber());
    					System.out.println("         学生姓名:"+stu[i].getname());
    					System.out.print("         请输入修改后的计算机网络成绩:");
    					chang=a.nextDouble();
    					System.out.println("********************************************************");
    					System.out.println("         石家庄铁道大学软件工程系学生学籍管理系统                     ");
    					System.out.println("*********************************************************");
    					System.out.println("     学生学号:"+stu[i].getstunumber());
    					System.out.println("     学生姓名:"+stu[i].getname());
    					System.out.println("     1、高等数学成绩:"+stu[i].getmathematicsscore());
    					System.out.println("     2、大学英语成绩:" + stu[i].getenglishiscore());
    					System.out.println("     3、计算机网络成绩:" + chang);
    					System.out.println("     4、数据库成绩:" + stu[i].getdatabasescore());
    					System.out.println("     5、软件工程成绩:" + stu[i].getsoftwarescore());
    					System.out.println("********************************************************");
    					System.out.print("     该学生成绩已修改完毕,是否提交(Y/N)");
    					System.out.println("**********************************************************");
    					if(a.next().equals("Y")) {
    						stu[i].setnetworkscore(chang);
    						show(stu);
    					}
    					else {
    						change(stu);
    					}
    					break;
    				case 4:
    					System.out.println("       学生考试成绩录入界面             ");
    					System.out.println("*****************************************");
    					System.out.println("         学生学号:"+stu[i].getstunumber());
    					System.out.println("         学生姓名:"+stu[i].getname());
    					System.out.print("         请输入修改后的数据库成绩:");
    					chang=a.nextDouble();
    					System.out.println("********************************************************");
    					System.out.println("         石家庄铁道大学软件工程系学生学籍管理系统                     ");
    					System.out.println("*********************************************************");
    					System.out.println("     学生学号:"+stu[i].getstunumber());
    					System.out.println("     学生姓名:"+stu[i].getname());
    					System.out.println("     1、高等数学成绩:"+stu[i].getmathematicsscore());
    					System.out.println("     2、大学英语成绩:" + stu[i].getenglishiscore());
    					System.out.println("     3、计算机网络成绩:" + stu[i].getnetworkscore());
    					System.out.println("     4、数据库成绩:" + chang);
    					System.out.println("     5、软件工程成绩:" + stu[i].getsoftwarescore());
    					System.out.println("********************************************************");
    					System.out.print("     该学生成绩已修改完毕,是否提交(Y/N)");
    					System.out.println("**********************************************************");
    					if(a.next().equals("Y")) {
    						stu[i].setdatabasescore(chang);
    						show(stu);
    					}
    					else {
    						change(stu);
    					}
    					break;
    				case 5:
    					System.out.println("       学生考试成绩录入界面             ");
    					System.out.println("*****************************************");
    					System.out.println("         学生学号:"+stu[i].getstunumber());
    					System.out.println("         学生姓名:"+stu[i].getname());
    					System.out.print("         请输入修改后的软件工程成绩:");
    					chang=a.nextDouble();
    					System.out.println("********************************************************");
    					System.out.println("         石家庄铁道大学软件工程系学生学籍管理系统                     ");
    					System.out.println("*********************************************************");
    					System.out.println("     学生学号:"+stu[i].getstunumber());
    					System.out.println("     学生姓名:"+stu[i].getname());
    					System.out.println("     1、高等数学成绩:"+stu[i].getmathematicsscore());
    					System.out.println("     2、大学英语成绩:" + stu[i].getenglishiscore());
    					System.out.println("     3、计算机网络成绩:" + stu[i].getnetworkscore());
    					System.out.println("     4、数据库成绩:" + stu[i].getdatabasescore());
    					System.out.println("     5、软件工程成绩:" + chang);
    					System.out.println("********************************************************");
    					System.out.print("     该学生成绩已修改完毕,是否提交(Y/N)");
    					System.out.println("**********************************************************");
    					if(a.next().equals("Y")) {
    						stu[i].setsoftwarescore(chang);
    						show(stu);
    					}
    					else {
    						change(stu);
    					}
    					break;
    				default:
    					System.out.println("请输入正确信息");
    					change(stu);
    					break;
    				}
    				flag = 1;
    			}
    		}
    		if (flag == 0)
    		{
    			System.out.println("学号输入错误,请重新输入学号");
    			change(stu);
    		}
    	}
    	static void jisuan(helloworld[] stu) {//计算学生成绩绩点
    		System.out.println("******************************************");
    		System.out.println("   石家庄铁道大学软件工程系学生学籍管理系统2019版    ");
    		System.out.println("     学生考试成绩绩点计算界面    ");
    		System.out.println("*******************************************");
    		System.out.print("     请输入学生学号:");
    		Scanner a=new Scanner(System.in);
    		String number=a.nextLine();
    		System.out.println("*********************************************");
    		System.out.println("**********************************************");
    		System.out.println("     石家庄铁道大学软甲工程系学生学籍管理系统2019版");
    		System.out.println("            学生考试成绩绩点计算界面");
    		System.out.println("************************************************");
    		System.out.println("     学生学号:"+number);
    		int i;
    		double gao=0,ying=0,ji=0,shu=0,ruan=0;
    		for(i=0;i<5;i++)
    			if (stu[i].getstunumber().equals(number))
    			{
    				System.out.println("      学生姓名:"+stu[i].getname());
    				//计算高等数学的成绩绩点
    				if(stu[i].getmathematicsscore()>=90)  
    					gao=4.0;
    				else if(stu[i].getmathematicsscore()>=85&&stu[i].getmathematicsscore()<=89.9)
    					gao=3.7;
    				else if(stu[i].getmathematicsscore()>=82&&stu[i].getmathematicsscore()<=84.9)
    					gao=3.3;
    				else if(stu[i].getmathematicsscore()>=78&&stu[i].getmathematicsscore()<=81.9)
    					gao=2.7;
    				else if(stu[i].getmathematicsscore()>=75&&stu[i].getmathematicsscore()<=77.9)
    					gao=2.3;
    				else if(stu[i].getmathematicsscore()>=72&&stu[i].getmathematicsscore()<=74.9)
    					gao=2.0;
    				else if(stu[i].getmathematicsscore()>=68&&stu[i].getmathematicsscore()<=71.9)
    					gao=1.7;
    				else if(stu[i].getmathematicsscore()>=66&&stu[i].getmathematicsscore()<=67.9)
    					gao=1.5;
    				else if(stu[i].getmathematicsscore()>=64&&stu[i].getmathematicsscore()<=65.9)
    					gao=1.0;
    				else if(stu[i].getmathematicsscore()<60)
    					gao=0;
    				System.out.println("      1.高等数学成绩绩点:"+gao);
    				//计算大学英语成绩绩点
    				if(stu[i].getenglishiscore()>=90)  
    					ying=4.0;
    				else if(stu[i].getenglishiscore()>=85&&stu[i].getenglishiscore()<=89.9)
    					ying=3.7;
    				else if(stu[i].getenglishiscore()>=82&&stu[i].getenglishiscore()<=84.9)
    					ying=3.3;
    				else if(stu[i].getenglishiscore()>=78&&stu[i].getenglishiscore()<=81.9)
    					ying=2.7;
    				else if(stu[i].getenglishiscore()>=75&&stu[i].getenglishiscore()<=77.9)
    					ying=2.3;
    				else if(stu[i].getenglishiscore()>=72&&stu[i].getenglishiscore()<=74.9)
    					ying=2.0;
    				else if(stu[i].getenglishiscore()>=68&&stu[i].getenglishiscore()<=71.9)
    					ying=1.7;
    				else if(stu[i].getenglishiscore()>=66&&stu[i].getenglishiscore()<=67.9)
    					ying=1.5;
    				else if(stu[i].getenglishiscore()>=64&&stu[i].getenglishiscore()<=65.9)
    					ying=1.0;
    				else if(stu[i].getenglishiscore()<60)
    					ying=0;
    				System.out.println("      2.大学英语成绩绩点:"+ying);
    				//计算计算机网络成绩绩点
    				if(stu[i].getnetworkscore()>=90)  
    					ji=4.0;
    				else if(stu[i].getnetworkscore()>=85&&stu[i].getnetworkscore()<=89.9)
    					ji=3.7;
    				else if(stu[i].getnetworkscore()>=82&&stu[i].getnetworkscore()<=84.9)
    					ji=3.3;
    				else if(stu[i].getnetworkscore()>=78&&stu[i].getnetworkscore()<=81.9)
    					ji=2.7;
    				else if(stu[i].getnetworkscore()>=75&&stu[i].getnetworkscore()<=77.9)
    					ji=2.3;
    				else if(stu[i].getnetworkscore()>=72&&stu[i].getnetworkscore()<=74.9)
    					ji=2.0;
    				else if(stu[i].getnetworkscore()>=68&&stu[i].getnetworkscore()<=71.9)
    					ji=1.7;
    				else if(stu[i].getnetworkscore()>=66&&stu[i].getnetworkscore()<=67.9)
    					ji=1.5;
    				else if(stu[i].getnetworkscore()>=64&&stu[i].getnetworkscore()<=65.9)
    					ji=1.0;
    				else if(stu[i].getnetworkscore()<60)
    					ji=0;
    				System.out.println("      3.计算机网络成绩绩点:"+ji);
    				//计算数据库成绩绩点
    				if(stu[i].getdatabasescore()>=90)  
    					shu=4.0;
    				else if(stu[i].getdatabasescore()>=85&&stu[i].getdatabasescore()<=89.9)
    					shu=3.7;
    				else if(stu[i].getdatabasescore()>=82&&stu[i].getdatabasescore()<=84.9)
    					shu=3.3;
    				else if(stu[i].getdatabasescore()>=78&&stu[i].getdatabasescore()<=81.9)
    					shu=2.7;
    				else if(stu[i].getdatabasescore()>=75&&stu[i].getdatabasescore()<=77.9)
    					shu=2.3;
    				else if(stu[i].getdatabasescore()>=72&&stu[i].getdatabasescore()<=74.9)
    					shu=2.0;
    				else if(stu[i].getdatabasescore()>=68&&stu[i].getdatabasescore()<=71.9)
    					shu=1.7;
    				else if(stu[i].getdatabasescore()>=66&&stu[i].getdatabasescore()<=67.9)
    					shu=1.5;
    				else if(stu[i].getdatabasescore()>=64&&stu[i].getdatabasescore()<=65.9)
    					shu=1.0;
    				else if(stu[i].getdatabasescore()<60)
    					shu=0;
    				System.out.println("      4.数据库成绩绩点:"+shu);
    				//计算软件工程成绩绩点
    				if(stu[i].getdatabasescore()>=90)  
    					ruan=4.0;
    				else if(stu[i].getdatabasescore()>=85&&stu[i].getdatabasescore()<=89.9)
    					ruan=3.7;
    				else if(stu[i].getdatabasescore()>=82&&stu[i].getdatabasescore()<=84.9)
    					ruan=3.3;
    				else if(stu[i].getdatabasescore()>=78&&stu[i].getdatabasescore()<=81.9)
    					ruan=2.7;
    				else if(stu[i].getdatabasescore()>=75&&stu[i].getdatabasescore()<=77.9)
    					ruan=2.3;
    				else if(stu[i].getdatabasescore()>=72&&stu[i].getdatabasescore()<=74.9)
    					ruan=2.0;
    				else if(stu[i].getdatabasescore()>=68&&stu[i].getdatabasescore()<=71.9)
    					ruan=1.7;
    				else if(stu[i].getdatabasescore()>=66&&stu[i].getdatabasescore()<=67.9)
    					ruan=1.5;
    				else if(stu[i].getdatabasescore()>=64&&stu[i].getdatabasescore()<=65.9)
    					ruan=1.0;
    				else if(stu[i].getdatabasescore()<60)
    					ruan=0;
    				System.out.println("      5.软件工程成绩绩点:"+ruan);
    				//计算平均学分绩点
    				double average=0;
    				average=(gao*4+ying*3+ji*4+shu*3+ruan*2)/16;
    				String result=String.format("%.2f",average);
    				System.out.println("    你的平均学分绩点为:"+result);
    				if(average>=2)
    					System.out.println("提示信息:你的学分绩点已达到毕业要求!");
    				else
    					System.out.println("提示信息:你的学分绩点不满足毕业要求!");
    				System.out.println("      是否返回系统主界面:(Y/N)");
    				System.out.println("**************************************");
    				if(a.next().equals("Y")) {
    					show(stu);
    				}
    				else 
    				break;
    			}
    	}
    	static void finish() {//退出当前程序
    		System.out.println("********************************************");
    		System.out.println("   石家庄铁道大学软件工程系学生学籍管理系统2019版");
    		System.out.println("             制作人:冯静妃");
    		System.out.println("********************************************");
    	}
    }
    录入成绩运行结果:

    修改成绩运行结果:

     

    计算绩点运行结果:

    退出系统运行结果:

          这个学生成绩录入、修改、计算系统的代码并不难,大概思路就是创建学生信息类,在主函数下面,构造录入、修改、计算函数,但是我一下午也没写完。我想归根结底的原因还是,动手练习的太少,假期的时间没有充分利用,所有的学习时间内,几乎都是在看书,而不是敲代码,我认为这是最致命的不足。有了这一次印象深刻的经历,在之后的学习中,还是应该多动手,坚持每天抽出时间来练习,重复做题变熟练,增加经验,提高手速,利用好空闲时间。


      

  • 相关阅读:
    Java 线程具有五中基本状态 ?
    可以直接调用 Thread 类的 run ()方法么?
    创建线程的三种方式的对比?
    FutureTask 是什么 ?
    什么是 CAS?
    如何让正在运行的线程暂停一段时间?
    什么是不可变对象(immutable object)?Java 中怎么 创建一个不可变对象?
    创建线程的有哪些方式?
    Semaphore 有什么作用 ?
    CopyOnWriteArrayList 可以用于什么应用场景?
  • 原文地址:https://www.cnblogs.com/fengjingfei/p/11508663.html
Copyright © 2020-2023  润新知