问答题
[说明]
本程序使用类来管理员工的通讯地址信息。已知程序的输出为:
输出记录:5
姓名:王丽华
街道地址:中华路15号
市:襄樊市
省;湖北省
邮政编码:430070
[C++程序]
#include < iostream, h >
#include < string, h >
class employee.
{ protected:
char name[10];
char street[ 20 ];
char city[10];
char{{U}} (1) {{/U}}[10];
char post[7];
int no;
{{U}} (2) {{/U}}:
{{U}}(3) {{/U}}(char [] ,char [] ,char [] ,char [] ,char [] ,int);
void changename ( char n [] ) { strcpy ( name, n); }
void changestreet( char s[] ) { strcpy(street,s) ;}
void changecity ( char c [] ) { strcpy ( city, c ); }
void changeprov( char p [] ) { strcpy(prov,p); }
void changeno(int nnm) {{{U}} (4) {{/U}};}
void display( );
};
employee::{{U}} (3) {{/U}}(char n[] ,char s[] ,char c[] ,char p1[] ,char p2[] ,int nam)
{ strcpy(name,n);
strcpy ( street, s);
strcpy ( city, c);
strcpy ( prov, p1 );
strcpy ( post, p2 );
no = nam; }
void employee:: display( ) { cont< <"输出记录: "< <no< <endl;
cout< < "姓名: "< < name < < endl;
coot < < "街道地址: "< < street < < endl;
cout < < "市: "< < city < < endl;
cout< <"省: "< <prov < <endl;
cout < <"邮政编码: "< < post < < endl;
}
void main( ) { employee cmp("王华" ,"中华路15号" ,"武汉市","湖北省","430070", 1 );
emp. changename( "五丽华" );
emp. changecity ( "襄樊市" );
emp. changeno(5);
{{U}}(5) {{/U}};
【正确答案】
【答案解析】(1)prov (2)public (3)employee (4)no=num
(5)emp.display()
[解析]本程序创建一个employee类,包括姓名、街道地址、市、省和邮政编码和记录号等信息以及若干函数:构造函数employee()初始化每个成员;changname ()、……changeno()等用于更改类中各属性的值;dis- play()函数用于打印数据。其中的数据成员是保护的,函数是公共的。