[说明] 有若干教师,每个教师只有姓名,一个教师可以指导多名研究生;每名研究生有姓名和研究方向,程序最后输出每个教师指导的所有研究生的姓名和研究方向。[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; } elsereturn (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类的定义。