java类与对象练习题1--教师学生评分

时间:2021-11-13 00:45:24

教师学生评分

学校要进行年终总结,需要对教师和学生的评分结果进行统计。学生的统计数据有三个,教师的统计数据有四个。请你实现一个统计系统,对输入的数据进行整理。 
请你实现一个Person类表示人员,并实现一些必要的方法,再实现Teacher类和Student类,通过类的继承机制完成这个任务。
输入格式:
首先输入一个数字N,表示输入统计的人数。
接下来是N行,每行是用空格隔开的一系列数字。
输出格式:
N行,每行是一个标识符加一个平均得分(向下取整的整数),用空格隔开。
学生的标识符是Student,教师的标识符是Teacher。
输入样例:
2
2 3 4
2 3 4 5
输出样例:

Student 3

Teacher 3

package test;

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 	System.out.println("请输入统计的人数(两次回车):");  
	        Scanner in=new Scanner(System.in);  
	        int number=in.nextInt(); 
	        in.nextLine(); 
	        String[] str=new String[number];  
	        for(int i=0;i<number;i++)  
	        {   
	            str[i]=in.nextLine();  
	        }  
	        for(int n=0;n<number;n++)  
	        {  
	            String[] temp=str[n].split(" ");
	            if(temp.length==3)  
	            { 
	                int[] score=new int[3];  
	                for(int m=0;m<3;m++)  
	                {  
	                    score[m] = Integer.parseInt(temp[m]); 
	                }  
	                Student student=new Student("Student",score);
	                System.out.println(student.getName()+" "+student.getAverage());  
	            }  
	            if(temp.length==4)  
	            {  
	            		int[] score=new int[4];  
	                for(int m=0;m<4;m++)  
	                {  
	                    score[m] = Integer.parseInt(temp[m]); 
	                }  
	                Teacher teacher=new Teacher("Teacher",score);
	                System.out.println(teacher.getName()+" "+teacher.getAverage());  
	            }  
	        }  
	}

}


abstract class Person {
	String name;
	public abstract int getAverage();
	public String getName()
	{
		return name;
	}

}

class Student extends Person {
	String name;
	int [] a = new int[3];
	
	public Student(String name,int []a) {
		this.a[0] = a[0];
		this.a[1] = a[1];
		this.a[2] = a[2];
		super.name = name;
	}
	public int getAverage() {
		return (a[0]+a[1]+a[2])/3;
	}

}


class Teacher extends Person {
	String name;
	int [] b = new int[4];
	
	public Teacher(String name,int[] b) {
		this.b[0] = b[0];
		this.b[1] = b[1];
		this.b[2] = b[2];
		this.b[3] = b[3];
		super.name = name;
	}
	public int getAverage() {
		return (b[0]+b[1]+b[2]+b[3])/4;
	}

}