问题 问答题

使用VC6打开考生文件夹下的工程test2_3。此工程包含一个test2_3.cpp,其中定义了类Stud,但类的定义并不完整。请按要求完成—下列操作,将程序补充完整。 (1)定义类的公有数据成员no,name[10],其中no是int型的数据,name[10]是字符型一维数组。请在注释“//**1**”之后添加适当的语句。 (2)完成函数set的定义,分别将参数n,na的值赋给数据成员no,name。注意:请使用this指针完成对no的赋值,使用字符串函数实现对name和cname的赋值。请在注释“//**2**”之后添加适当的语句。 (3)完成类的成员函数disp的定义,使其按no,deg,name和cname的顺序输出类的数据成员的值,中间使用跳格符分隔,请在注释“//**3**”之后添加适当的语句。 输出结果如下: 1 李华 95 990701 2 王东 83 990702 注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。 源程序文件test2_3.cpp清单如下: #include<iostream.h> #include<string.h> class Stud { public: // ** 1 ** int deg; char cname[10]; Stud(){} void set(int n,char na[],int d,char cn[]) { // ** 2 ** deg=d; strcpy(cname,cn); } void disp() { // ** 3 ** } }; void main() { Stud obj[2]; obj[0].set(1,"李华",95,"990701"); obj[1].set(2,"王东",83,"990702"); obj[0].disp(); obj[1].disp(); }

答案

参考答案:

解析:(1) int no; char name[10];(2) this->no=n; strcpy(name,na);(3) cout<<no<<"\t"<<name<<"\t"<<deg<<"\r"<<cname<<endl; 主要考查考生对于对象定义、this指针和字符串函数的使用。this指针是指向正在被某个成员函数操作的对象的指针,需要使用->调用其他的函数,strcpy是字符串复制函数,作用是将第二个参数赋值给第一个参数。

填空题
单项选择题