使用VC6打开考生文件夹下的工程test22_3,此工程包含一个源程序文件test22_3.cpp,其中定义了用于表示考生的类 CStudent和它的派生类CGraduateStudent,但它们的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义CStudent的构造函数,函数含参数nm,它是char型的指针数据,请使用字符串函数将类数据成员name初始化。请在注释“//**1**”之后添加适当的语句。(2)完成类CStudent的成员函数void addscore(double sc)的定义,将类数据成员score加上参数sc,请在注释“//**2**”之后添加适当的语句。(3)添加类CGraduateStudent的成员函数void addpaper(int d)的定义,将int型的参数d的值加到类的数据成员paper上,请在注释“//**3**”之后添加适当的语句。(4)调用对象sdt的成员函数addpaper使得该考生的论文数量变为10,将请在注释“//**4**”之后添加适当的语句。输出结果如下:Student Hanson(Advisor:MichaelPhong)Total paper is 10注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test22_3.cpp清单如下:include<iostream.h>include<string.h>class CStudent{private:char name[30];int code;double score;public:CStudent(char* nm){//**1**}CStudent(){}void putname(char* nm){ strcpy(name,nm);}void putcode(int d){code=d;}void putscore(double sc){score=sc;}void getname(char* nm){strcpy(nm,name);}double getcode(){return code;)double getscore(){return score;}void addscore(double sc){//**2**}};class CGraduateStudent:public CStudent{private:char advisor[30];int paper;public:void putadvisor(char*nm){ strcpy(advisor, nm);}void getadvisor(char*nm){ strcpy(nm, advisor);}void putpaper(int d){ paper=d;}//**3**int getpaper(){ return paper;}};void main(){CGraduateStudent sdt;sdt.putname("Hanson");sdt.putadvisor("MichaelPhong");sdt.putpaper(8);//**4**char csname[30];sdt.getname(csname);char caname[30];sdt.getadvisor(caname);cout<<"Student"<<csname<<endl;cout<<"(Advisor:"<<caname<<")"<<endl;cout<<"Total paper is"<<sdt.getpaper()<<endl;}
使用VC6打开考生文件夹下的工程test22_3,此工程包含一个源程序文件test22_3.cpp,其中定义了用于表示考生的类 CStudent和它的派生类CGraduateStudent,但它们的定义并不完整。请按要求完成下列操作,将程序补充完整。
(1)定义CStudent的构造函数,函数含参数nm,它是char型的指针数据,请使用字符串函数将类数据成员name初始化。请在注释“//**1**”之后添加适当的语句。
(2)完成类CStudent的成员函数void addscore(double sc)的定义,将类数据成员score加上参数sc,请在注释“//**2**”之后添加适当的语句。
(3)添加类CGraduateStudent的成员函数void addpaper(int d)的定义,将int型的参数d的值加到类的数据成员paper上,请在注释“//**3**”之后添加适当的语句。
(4)调用对象sdt的成员函数addpaper使得该考生的论文数量变为10,将请在注释“//**4**”之后添加适当的语句。
输出结果如下:
Student Hanson
(Advisor:MichaelPhong)
Total paper is 10
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test22_3.cpp清单如下:
include<iostream.h>
include<string.h>
class CStudent
{
private:
char name[30];
int code;
double score;
public:
CStudent(char* nm)
{
//**1**
}
CStudent(){}
void putname(char* nm){ strcpy(name,nm);}
void putcode(int d){code=d;}
void putscore(double sc){score=sc;}
void getname(char* nm){strcpy(nm,name);}
double getcode(){return code;)
double getscore(){return score;}
void addscore(double sc)
{
//**2**
}
};
class CGraduateStudent:public CStudent
{
private:
char advisor[30];
int paper;
public:
void putadvisor(char*nm){ strcpy(advisor, nm);}
void getadvisor(char*nm){ strcpy(nm, advisor);}
void putpaper(int d){ paper=d;}
//**3**
int getpaper(){ return paper;}
};
void main()
{
CGraduateStudent sdt;
sdt.putname("Hanson");
sdt.putadvisor("MichaelPhong");
sdt.putpaper(8);
//**4**
char csname[30];
sdt.getname(csname);
char caname[30];
sdt.getadvisor(caname);
cout<<"Student"<<csname<<endl;
cout<<"(Advisor:"<<caname<<")"<<endl;
cout<<"Total paper is"<<sdt.getpaper()<<endl;
}