《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx

上传人:b****3 文档编号:5520337 上传时间:2023-05-08 格式:DOCX 页数:45 大小:17.42KB
下载 相关 举报
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第1页
第1页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第2页
第2页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第3页
第3页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第4页
第4页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第5页
第5页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第6页
第6页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第7页
第7页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第8页
第8页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第9页
第9页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第10页
第10页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第11页
第11页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第12页
第12页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第13页
第13页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第14页
第14页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第15页
第15页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第16页
第16页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第17页
第17页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第18页
第18页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第19页
第19页 / 共45页
《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx_第20页
第20页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx

《《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx》由会员分享,可在线阅读,更多相关《《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx(45页珍藏版)》请在冰点文库上搜索。

《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx.docx

《C面向对象程序设计答案解析》第五章谭浩强清华大学出版社docx

.

 

1:

 

#include

 

usingnamespacestd;

 

classStudent

 

{public:

 

voidget_value()

 

{cin>>num>>name>>sex;}

 

voiddisplay()

 

{cout<<"num:

"<

 

cout<<"name:

"<

 

cout<<"sex:

"<

 

private:

 

intnum;

 

charname[10];

 

charsex;

 

};

 

classStudent1:

publicStudent

 

{public:

 

voidget_value_1()

 

{get_value();

 

cin>>age>>addr;}

.

 

voiddisplay_1()

 

{

 

cout<<"age:

"<

 

//引用派生类的私有成员,正确。

 

cout<<"address:

"<

 

private:

 

intage;

 

charaddr[30];

 

//引用派生类的私有成员,正确。

 

};

 

intmain()

 

{Student1stud1;

 

stud1.get_value_1();

 

stud1.display();

 

stud1.display_1();

 

return0;

 

}

 

2:

 

#include

 

usingnamespacestd;

 

classStudent

 

{public:

 

voidget_value()

 

{cin>>num>>name>>sex;}

.

 

voiddisplay()

 

{cout<<"num:

"<

 

cout<<"name:

"<

 

cout<<"sex:

"<

 

private:

 

intnum;

 

charname[10];

 

charsex;

 

};

 

classStudent1:

privateStudent

 

{public:

 

voidget_value_1()

 

{get_value();

 

cin>>age>>addr;}

 

voiddisplay_1()

 

{display();

 

cout<<"age:

"<

 

//引用派生类的私有成员,正确。

 

cout<<"address:

"<

 

//引用派生类的私有成员,正确。

 

private:

 

intage;

 

charaddr[30];

.

 

};

 

intmain()

 

{Student1stud1;

 

stud1.get_value_1();

 

stud1.display_1();

 

return0;

 

}

 

3:

 

#include

 

usingnamespacestd;

 

classStudent//声明基类

 

{public:

//基类公用成员

 

voidget_value();

 

voiddisplay();

 

protected:

//基类保护成员

 

intnum;

 

charname[10];

 

charsex;

 

};

 

voidStudent:

:

get_value()

.

 

{cin>>num>>name>>sex;}

 

voidStudent:

:

display()

 

{cout<<"num:

"<

 

cout<<"name:

"<

 

cout<<"sex:

"<

 

}

 

classStudent1:

protectedStudent

 

{public:

 

voidget_value_1();

 

voiddisplay1();

 

private:

 

intage;

 

charaddr[30];

 

//声明一个保护派生类

 

};

 

voidStudent1:

:

get_value_1()

 

{get_value();

 

cin>>age>>addr;

 

}

 

voidStudent1:

:

display1()

.

 

{cout<<"num:

"<

//引用基类的保护成员

cout<<"name:

"<

//引用基类的保护成员

cout<<"sex:

"<

//引用基类的保护成员

cout<<"age:

"<

//引用派生类的私有成员

cout<<"address:

"<

//引用派生类的私有成员

}

 

intmain()

 

{Student1stud1;

 

//stud1

 

是派生类

 

student1

 

类的对象

 

stud1.get_value_1();

 

//调用派生类对象

 

stud1

 

的公用成员函数

 

stud1.display1();

 

//调用派生类对象

 

stud1

 

的公用成员函数

 

return0;

 

}

 

4:

解法一

 

#include

 

usingnamespacestd;

 

classStudent

 

//声明基类

 

{public:

 

//基类公用成员

 

voidget_value();

 

voiddisplay();

 

protected:

 

intnum;

 

//基类保护成员

.

 

charname[10];

 

charsex;

 

};

 

voidStudent:

:

get_value()

 

{cin>>num>>name>>sex;}

 

voidStudent:

:

display()

 

{cout<<"num:

"<

 

cout<<"name:

"<

 

cout<<"sex:

"<

 

}

 

classStudent1:

publicStudent//声明一个公用派生类

 

{public:

 

voidget_value_1();

 

voiddisplay1();

 

private:

 

intage;

 

charaddr[30];

 

};

.

 

voidStudent1:

:

get_value_1()

 

{get_value();

 

cin>>age>>addr;

 

}

 

voidStudent1:

:

display1()

 

{cout<<"num:

"<

 

cout<<"name:

"<

 

cout<<"sex:

"<

 

cout<<"age:

"<

 

cout<<"address:

"<

 

}

 

intmain()

 

{Student1stud1;//stud1是派生类student1类的对象

 

stud1.get_value_1();//调用派生类对象stud1的公用成员函数

 

get_value_1

 

stud1.display1();//调用派生类对象stud1的公用成员函数

 

display1

 

return0;

 

}

 

解法二

 

#include

.

 

usingnamespacestd;

 

classStudent

 

{public:

 

//声明基类

 

//基类公用成员

 

voidget_value();

 

voiddisplay();

 

protected:

 

intnum;

 

charname[10];

 

charsex;

 

//基类保护成员

 

};

 

voidStudent:

:

get_value()

 

{cin>>num>>name>>sex;}

 

voidStudent:

:

display()

 

{cout<<"num:

"<

 

cout<<"name:

"<

 

cout<<"sex:

"<

 

}

 

classStudent1:

protectedStudent

 

{public:

 

//声明一个公用派生类

.

 

voidget_value_1();

 

voiddisplay1();

 

private:

 

intage;

 

charaddr[30];

 

};

 

voidStudent1:

:

get_value_1()

 

{cin>>age>>addr;}

 

voidStudent1:

:

display1()

 

{cout<<"age:

"<

 

cout<<"address:

"<

 

}

 

intmain()

 

{Student1stud1;

 

//stud1

 

是派生类

 

student1

 

类的对象

 

stud1.get_value();

 

stud1.get_value_1();

 

stud1.display();

 

stud1.display1();

 

//合法。

display1

 

是派生类中的公用成员函数

 

return0;

.

 

}

 

5:

 

classA//A为基类

 

{public:

 

voidf1();

 

inti;

 

protected:

 

voidf2();

 

intj;

 

private:

 

intk;

 

};

 

classB:

publicA//B为A的公用派生类

 

{public:

 

voidf3();

 

protected:

 

intm;

 

private:

 

intn;

 

};

.

 

classC:

publicB

 

//C

 

为B

 

的公用派生类

 

{public:

 

voidf4();

 

private:

 

intp;

 

};

 

intmain()

 

{Aa1;

 

//a1

 

是基类

 

A的对象

 

Bb1;

 

//b1

 

是派生类

 

B的对象

 

Cc1;

 

//c1

 

是派生类

 

C的对象

 

return0;

 

}

 

6:

 

#include

 

usingnamespacestd;

 

classA

 

{public:

 

voidf1();

 

protected:

 

voidf2();

 

private:

.

 

inti;

 

};

 

classB:

publicA

 

{public:

 

voidf3();

 

intk;

 

private:

 

intm;

 

};

 

classC:

protectedB

 

{public:

 

voidf4();

 

protected:

 

intn;

 

private:

 

intp;

 

};

 

classD:

privateC

 

{public:

.

 

voidf5();

 

protected:

 

intq;

 

private:

 

intr;

 

};

 

intmain()

 

{Aa1;

 

Bb1;

 

Cc1;

 

Dd1;return0;

}

 

7:

 

#include

 

usingnamespacestd;

 

classA

 

{

 

public:

 

A(){a=0;b=0;}

 

A(inti){a=i;b=0;}

.

 

A(inti,intj){a=i;b=j;}

 

voiddisplay(){cout<<"a="<

 

private:

 

inta;

 

intb;

 

};

 

classB:

publicA

 

{

 

public:

 

B(){c=0;}

 

B(inti):

A(i){c=0;}

 

B(inti,intj):

A(i,j){c=0;}

 

B(inti,intj,intk):

A(i,j){c=k;}

 

voiddisplay1()

 

{display();

 

cout<<"c="<

 

}

 

private:

 

intc;

 

};

.

 

intmain()

 

{Bb1;

 

Bb2

(1);Bb3(1,3);Bb4(1,3,5);b1.display1();

b2.display1();

 

b3.display1();

 

b4.display1();return0;

}

 

8:

 

#include

 

usingnamespacestd;

 

classA

 

{

 

public:

 

A(){cout<<"constructingA"<

 

~A(){cout<<"destructingA"<

 

};

 

classB:

publicA

.

 

{

 

public:

 

B(){cout<<"constructingB"<

 

~B(){cout<<"destructingB"<

 

};

 

classC:

publicB

 

{

 

public:

 

C(){cout<<"constructingC"<

 

~C(){cout<<"destructingC"<

 

};

 

intmain()

 

{Cc1;return0;

}

 

9:

 

#include

 

#include

 

usingnamespacestd;

 

classTeacher

 

{public:

.

 

Teacher(stringnam,inta,chars,stringtit,stringad,stringt);

 

voiddisplay();

 

protected:

 

stringname;

 

intage;

 

charsex;

 

stringtitle;

 

stringaddr;

 

stringtel;

 

};

 

Teacher:

:

Teacher(stringnam,inta,chars,stringtit,stringad,stringt):

 

name(nam),age(a),sex(s),title(tit),addr(ad),tel(t){}

 

voidTeacher:

:

display()

 

{cout<<"name:

"<

 

cout<<"age"<

 

cout<<"sex:

"<

 

cout<<"title:

"<

 

cout<<"address:

"<

 

cout<<"tel:

"<

 

}

.

 

classCadre

 

{public:

 

Cadre(stringnam,inta,chars,stringp,stringad,stringt);

 

voiddisplay();

 

protected:

 

stringname;

 

intage;

 

charsex;

 

stringpost;

 

stringaddr;

 

stringtel;

 

};

 

Cadre:

:

Cadre(stringnam,inta,chars,stringp,stringad,stringt):

 

name(nam),age(a),sex(s),post(p),addr(ad),tel(t){}

 

voidCadre:

:

display()

 

{cout<<"name:

"<

 

cout<<"age:

"<

 

cout<<"sex:

"<

 

cout<<"post:

"<

 

cout<<"address:

"<

.

 

cout<<"tel:

"<

 

}

 

classTeacher_Cadre:

publicT{public:

 

eacher,publicCadre

Teacher_Cadre(stringnam,inta,chars,stringtit,stringp,stringad,stringt,floatw);

 

voidshow();

 

private:

 

floatwage;

 

};

 

Teacher_Cadre:

:

Teacher_Cadre(stringnam,inta,chars,stringt,stringp,string

 

ad,stringtel,floatw):

 

Teacher(nam,a,s,t,ad,tel),Cadre(nam,a,s,p,ad,tel),wage(w){}

 

voidTeacher_Cadre:

:

show()

 

{Teacher:

:

display();

 

cout<<"post:

"<

:

post<

 

cout<<"wages:

"<

 

}

 

intmain()

 

{Teacher_Cadre

 

te_ca("Wang-li",50,'f',"prof.","president","135

 

Beijing

.

 

Road,Shanghai","(021)61234567",1534.5);

 

te_ca.show();

 

return0;

 

}

 

10:

 

#include

 

#include

 

usingnamespacestd;

 

classTeacher

 

{public:

 

//教师类

 

Teacher(int,char[],char);

 

//声明构造函数

 

voiddisplay();

 

//声明输出函数

 

private:

 

intnum;

 

charname[20];

 

charsex;

 

};

 

Teacher:

:

Teacher(intn,charnam[],chars)

 

{num=n;

 

strcpy(name,nam);

 

sex=s;

 

//定义构造函数

.

 

}

 

voidTeacher:

:

display()

 

{cout<<"num:

"<

 

cout<<"name:

"<

 

cout<<"sex:

"<

 

//定义输出函数

 

}

 

classBirthDate

 

{public:

 

//生日类

 

BirthDate(int,int,int);

 

//声明构造函数

 

voiddisplay();

 

//声明输出函数

 

voidchange(int,int,int);

 

//声明修改函数

 

private:

 

intyear;

 

intmonth;

 

intday;

 

};

 

BirthDate:

:

BirthDate(inty,intm,intd)

 

{year=y;

 

month=m;

 

//定义构造函数

.

 

day=d;

 

}

 

voidBirthDa

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2