问答题 [说明]
有若干教师,每个教师只有姓名,一个教师可以指导多名研究生;每名研究生有姓名和研究方向,程序最后输出每个教师指导的所有研究生的姓名和研究方向。
[Java程序]
public class Teacher
String name;
int top=0;
Student[] student=new Student[20];
public Teacher()
public Teacher(String name) this.name=name;
boolean add(Student stu)
int len=this.student.length;
if (top<len-1)
this.student[top]=siu;
(1) ;
return true;

else
return (2) ;

void disp()
System.out.println(“指导老师"”+this.name);
System.out.println(“研究生:”);
for(int i=0;i< (3) ;i++)
System.out.println(“姓名:”+this.student[i].name+“/t研究方向:”+this.student[i]. search);


public static void main(String[] args)
Teacher t[]=new Teacher(“李明”),new Teacher(“王华”);
Student s1 = new Student(“孙强”,“数据库”);
Student s2 = new Student(“陈文”,“软件工程”);
Student s3 = new Student(“章锐”,“计算机网络”);
if(! t[0].add(s1)) System.out.println(“每个老师最多只能指导20个学生!”);
if(! t[0].add(a2)) System.out.println(“每个老师最多只能指导20个学生!”);
if(! t[1].add(s3)) System.out.println(“每个老师最多只能指导20个学生!”);
for(int i=0;i<2;i++)
(4) ;


class (5)
String name;
String search;
public Student()
public Student(String name,String search)
this.name=name;
this.search=search;

String getName()return this.name;
String getSearch()return this.search;


【正确答案】(1) top++及其等效形式 (2) false (3) top (4) t[i].disp() (5) Student
【答案解析】[考点分析] 考查Java语言程序设计,主要是类的使用。
[解析] (1)~(2):add函数是给Teacher类的student数组增加一个学生,每个老师最多能指导20个学生,如果增加成功则返回true;否则返回false。Top是一个表示student数组里面有多少个学生的标志。每增加一个学生,top就要加1;
(3)disp函数是用一个循环来显示老师所指导的所有学生,循环变量从0开始,上限是top-1;
(4)此处是调用disp函数来显示所有老师指导的学生。
(5)根据程序大意,这是Student类的定义。