题目显示不全,完整题目描述:
设计一个班级类和一个学生类:1.学生类属性:姓名,学号,成绩(整数即可);定义相关构造方法;定义返回学生信息字符串的方法;2.班级类属性:班级名,人数,成员;其中成员是一个学生类的数组;班级类中定义方法,(1)显示总分和平均分(2)显示最高分和最低分学生信息(3)向班级中添加学生,即向班级类中的成员数组中添加学生对象。3.在班级类中定义main方法,定义班级类对象,输入多个学生信息,然后输出这个班级的:总分,平均分,输出最高分学生信息,输出最低分学生信息。
完整代码如下:
package naizi;
public class Class {
private String ClassName;
private int Number;
private static int count=0; //记录总人数
Student[] mate = new Student[200]; //定义最多200个学生类对象
Class(String ClassName,int Number){ //构造方法
this.ClassName=ClassName;
this.Number=Number;
}
public void append(Student p){
//因为编程的时候老是在这个地方报错,所以加了个异常
try{
mate[count++] = new Student(p.getName(),p.getSchoolNumber(),p.getScore());
}catch (Exception e) {
System.out.println("空指针异常");
System.exit(1);
}
}
public void totalAndaverage(){ //记录总分
int sum=0,i;
for(i=0;i
sum+=mate[i].getScore();
}
System.out.println("total score:"+sum);
System.out.println("average score:"+sum/count);
}
public void maxAndmin(){ //找到并记录最高分最低分所在学生类数组的序列号
int max=0,min=0,MaxScore,MinScore,i;
MaxScore = mate[0].getScore();
MinScore = mate[0].getScore();
for(i=0;i
if(MaxScore<=mate[i].getScore()){
MaxScore = mate[i].getScore();
max=i;
}
if(MinScore>=mate[i].getScore()){
MinScore = mate[i].getScore();
min=i;
}
}
System.out.println("max Info:"+mate[max].showInfo());
System.out.println("max Info:"+mate[min].showInfo());
}
public static void main(String args[]){
Class c=new Class("class1",3);
Student p=new Student("zhangsan","101",47);
c.append(p);
p=new Student("lisi","102",68);
c.append(p);
p=new Student("wanger","103",98);
c.append(p);
c.totalAndaverage();
c.maxAndmin();
}
}
//定义学生类
class Student{
private String Name;
private String SchoolNumber;
private int Score;
//定义构造方法
Student(String Name,String SchoolNumber,int Score){
this.Name=Name;
this.SchoolNumber=SchoolNumber;
this.Score=Score;
}
//定义get和set方法
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public void setSchoolNumber(String schoolNumber) {
SchoolNumber = schoolNumber;
}
public void setScore(int score) {
Score = score;
}
public String getSchoolNumber() {
return SchoolNumber;
}
public int getScore() {
return Score;
}
//子类新定义的方法
public String showInfo(){
return "name="+Name+";num="+SchoolNumber+";score="+Score+";";
}
}
测试如图: