《C++面向对象程序设计》答案第三章谭浩强清华大学出版社Word文档下载推荐.docx
- 文档编号:18023057
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:15
- 大小:17.55KB
《C++面向对象程序设计》答案第三章谭浩强清华大学出版社Word文档下载推荐.docx
《《C++面向对象程序设计》答案第三章谭浩强清华大学出版社Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《《C++面向对象程序设计》答案第三章谭浩强清华大学出版社Word文档下载推荐.docx(15页珍藏版)》请在冰豆网上搜索。
{month=1;
day=1;
voidDate:
display()
{cout<
〈month<
<
"
/"
〈〈day〈〈"
〈<
year<
〈endl;
intmain()
{
Dated1(10,13,2005);
Dated2(12,30);
Dated3(10);
Dated4;
d1.display();
d2.display();
d3.display();
d4.display();
return0;
}
3:
{public:
Date(int=1,int=1,int=2005);
voiddisplay();
intday;
};
Date(intm,intd,inty):
month(m),day(d),year(y)
voidDate:
{cout<
month〈〈"
/”<
〈day〈<
”/”<
〈endl;
{
Dated1(10,13,2005);
Dated2(12,30);
Dated3(10);
Dated4;
d1.display();
d3。
display();
d4。
display();
return0;
4:
#include<
classStudent
Student(intn,floats):
num(n),score(s){}
private:
intnum;
floatscore;
voidStudent:
{cout〈〈num<
〈”"
〈score〈〈endl;
{Studentstud[5]={
Student(101,78.5),Student(102,85。
5),Student(103,98.5),
Student(104,100.0),Student(105,95.5)};
Student*p=stud;
for(inti=0;
i〈=2;
p=p+2,i++)
p-〉display();
5:
#include〈iostream〉
num(n),score(s){}
intnum;
};
voidmain()
{Studentstud[5]={
Student(101,78。
5),Student(102,85.5),Student(103,98.5),
Student(104,100.0),Student(105,95。
5)};
voidmax(Student*);
Student*p=&
stud[0];
max(p);
voidmax(Student*arr)
{floatmax_score=arr[0]。
score;
intk=0;
for(inti=1;
i〈5;
i++)
if(arr[i]。
score〉max_score){max_score=arr[i]。
score;
k=i;
}
cout<
arr[k]。
num〈〈””〈〈max_score〈<
endl;
6:
iostream>
{public:
voidchange(intn,floats){num=n;
score=s;
voiddisplay(){cout<
〈num〈<
”"
〈〈score〈〈endl;
floatscore;
{Studentstud(101,78.5);
stud。
stud.change(101,80.5);
stud.display();
7:
解法一
num(n),score(s){}
voidchange(intn,floats){num=n;
voiddisplay(){cout<
num<
””<
score〈<
//可改为:
voiddisplay()const{cout〈〈num<
〈〈score<
{constStudentstud(101,78.5);
stud.display();
//stud。
change(101,80。
5);
解法二:
usingnamespacestd;
Student(intn,floats):
num(n),score(s){}
voidchange(intn,floats)const{num=n;
score=s;
voiddisplay()const{cout<
num〈〈”"
score<
mutableintnum;
mutablefloatscore;
{constStudentstud(101,78。
5);
change(101,80.5);
解法三:
num(n),score(s){}
voidchange(intn,floats){num=n;
voiddisplay(){cout〈<
num〈〈"
"
{Studentstud(101,78。
Student*p=&stud;
p->
p—〉change(101,80.5);
p—〉display();
8:
{public:
”〈<
{Studentstud(101,78。
voidfun(Student&
);
fun(stud);
voidfun(Student&
stu)
{stu.display();
stu.change(101,80.5);
stu。
9:
classProduct
Product(intn,intq,floatp):
num(n),quantity(q),price(p){};
voidtotal();
staticfloataverage();
staticvoiddisplay();
intquantity;
floatprice;
staticfloatdiscount;
staticfloatsum;
staticintn;
};
voidProduct:
total()
{floatrate=1.0;
if(quantity〉10)rate=0。
98*rate;
sum=sum+quantity*price*rate*(1-discount);
n=n+quantity;
voidProduct:
sum〈<
endl;
cout〈<
average()〈<
floatProduct:
average()
{return(sum/n);
discount=0.05;
sum=0;
intProduct:
n=0;
{
ProductProd[3]={
Product(101,5,23.5),Product(102,12,24.56),Product(103,100,21.5)
i<
3;
Prod[i].total();
Product:
10:
#include〈iostream>
classDate;
classTime
Time(int,int,int);
friendvoiddisplay(constDate&
,constTime&
);
inthour;
intminute;
intsec;
Time:
Time(inth,intm,ints)
{hour=h;
minute=m;
sec=s;
Date(int,int,int);
friendvoiddisplay(constDate&,constTime&
Date(intm,intd,inty)
{month=m;
day=d;
year=y;
voiddisplay(constDate&d,constTime&t)
{
〈d.month<
”/"
〈〈d.day〈<
〈d。
t.hour<
”:
”〈〈t。
minute<
”〈〈t.sec〈<
Timet1(10,13,56);
Dated1(12,25,2004);
display(d1,t1);
11:
classTime;
Date(int,int,int);
friendTime;
intmonth;
month(m),day(d),year(y){}
Time(int,int,int);
voiddisplay(constDate&
intminute;
Time:
Time(inth,intm,ints):
hour(h),minute(m),sec(s){}
voidTime:
display(constDate&
d)
d.month<
〈〈d.day<
”/”〈<
d。
〈hour<
”〈<
minute〈<
sec〈〈endl;
Timet1(10,13,56);
Dated1(12,25,2004);
t1.display(d1);
12:
template<
classnumtype>
classCompare
Compare(numtypea,numtypeb);
numtypemax();
numtypemin();
numtypex,y;
template〈classnumtype>
Compare<
numtype>
Compare(numtypea,numtypeb)
{x=a;
y=b;
numtypeCompare<
max()
{return(x>
y)?
x:
y;
template<
numtype〉:
min()
{return(x<
y)?
x:
y;
{Compare<
int>
cmp1(3,7);
〈cmp1.max()<
istheMaximumoftwointegernumbers。
”〈〈endl;
cmp1。
min()〈<
istheMinimumoftwointegernumbers."
〈endl〈<
Compare〈float>
cmp2(45.78,93.6);
〈cmp2。
max()〈<
”istheMaximumoftwofloatnumbers."
〈〈endl;
cmp2。
”istheMinimumoftwofloatnumbers。
〈〈endl〈<
Compare〈char>
cmp3('
a'
,’A’);
〈cmp3.max()〈〈”istheMaximumoftwocharacters。
cmp3.min()<
istheMinimumoftwocharacters。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+面向对象程序设计 C+ 面向 对象 程序设计 答案 第三 章谭浩强 清华大学出版社