c++程序的设计谭浩强课后习题答案完整版.docx
- 文档编号:13264361
- 上传时间:2023-06-12
- 格式:DOCX
- 页数:63
- 大小:27.95KB
c++程序的设计谭浩强课后习题答案完整版.docx
《c++程序的设计谭浩强课后习题答案完整版.docx》由会员分享,可在线阅读,更多相关《c++程序的设计谭浩强课后习题答案完整版.docx(63页珍藏版)》请在冰点文库上搜索。
c++程序的设计谭浩强课后习题答案完整版
第八章
#include
{public:
//成员改为公用的
inthour;intminute;intsec;};
Timet;
voidset_time(void)//在main函数之前定义
{cin>>t.hour;cin>>t.minute;cin>>t.sec;
}
voidshow_time(void)//在main函数之前定义
{
cout< "< "< } intmain(){set_time();show_time();return0; } 8.2题 #include {public: voidset_time(void){cin>>hour;cin>>minute;cin>>sec;}voidshow_time(void) {cout< "< "< private: inthour; intminute;intsec; }; Timet;intmain() { t.set_time(); t.show_time();return0; } 8.3题 #include {public: voidset_time(void);voidshow_time(void);private: inthour;intminute; intsec; };voidTime: : set_time(void){cin>>hour;cin>>minute;cin>>sec; }voidTime: : show_time(void) {cout< "< "< Timet;intmain(){t.set_time(); t.show_time();return0; } 8.4题 //xt8-4.h(student.h)classStudent {public: voiddisplay();voidset_value();private: intnum;charname[20];charsex; }; 8.4题 //xt8-4-1.cpp(main.cpp)#include } 8.4题另一解 //xt8-4-2.cpp(即student.cpp)#include"xt8-4.h"//在此文件中进行 函数的定义 #include : display(){cout<<"num: "< "< "< } voidStudent: : set_value() {cin>>num;cin>>name;cin>>sex; } 8.5题 //xt8-5.h(arraymax.h)classArray_max{public: voidset_value();voidmax_value();voidshow_value();private: intarray[10];intmax; }; 8.5题 //xt8-5-1.cpp(file1.cpp) #include {Array_maxarrmax;arrmax.set_value();arrmax.max_value();arrmax.show_value();return0; } 8.5题 //xt8-5-2.cpp(arraymax.cpp)#include voidArray_max: : set_value() {inti; for(i=0;i<10;i++)cin>>array[i]; } voidArray_max: : max_value() {inti; max=array[0];for(i=1;i<10;i++)if(array[i]>max)max=array[i]; } voidArray_max: : show_value() {cout<<"max="< } 8.6题 #include voidget_value();floatvolume();voiddisplay();public: floatlengh;floatwidth;floatheight; }; voidBox: : get_value() {cout<<"pleaseinputlengh,width,height: ";cin>>lengh;cin>>width;cin>>height; } floatBox: : volume() {return(lengh*width*height);} voidBox: : display() {cout< intmain() {Boxbox1,box2,box3;box1.get_value();cout<<"volmueofbax1is";box1.display();box2.get_value();cout<<"volmueofbax2is";box2.display();box3.get_value();cout<<"volmueofbax3is";box3.display();return0; } 8.6题另一解 #include {public: voidget_value();voidvolume();voiddisplay();public: floatlengh;floatwidth;floatheight;floatvol; }; voidBox: : get_value() {cout<<"pleaseinputlengh,width,height: ";cin>>lengh;cin>>width;cin>>height; } voidBox: : volume() {vol=lengh*width*height;} voidBox: : display() {cout< intmain() {Boxbox1,box2,box3; box1.get_value();box1.volume();cout<<"volmueofbax1is";box1.display();box2.get_value();box2.volume();cout<<"volmueofbax2is";box2.display();box3.get_value();box3.volume();cout<<"volmueofbax3is";box3.display();return0; } 9.2题 #include {public: Date(int,int,int); Date(int,int); Date(int);Date();voiddisplay();private: intmonth;intday;intyear; }; Date: : Date(intm,intd,inty): month(m),day(d),year(y) {} Date: : Date(intm,intd): month(m),day(d) {year=2005;} Date: : Date(intm): month(m) {day=1;year=2005; } Date: : Date() {month=1; day=1;year=2005; } voidDate: : display() {cout< intmain() { Dated1(10,13,2005); Dated2(12,30); Dated3(10);Dated4;d1.display();d2.display();d3.display();d4.display();return0; } 9.3题 #include usingnamespacestd;classDate {public: Date(int=1,int=1,int=2005);voiddisplay();private: intmonth;intday;intyear; }; Date: : Date(intm,intd,inty): month(m),day(d),year(y) {} voidDate: : display() {cout< intmain() { Dated1(10,13,2005); Dated2(12,30); Dated3(10); Dated4;d1.display();d2.display();d3.display();d4.display();return0; } 9.4题 #include {public: Student(intn,floats): num(n),score(s){}voiddisplay();private: intnum;floatscore; }; voidStudent: : display() {cout< intmain() {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();return0; } 9.5题 #include {public: Student(intn,floats): num(n),score(s){}intnum;floatscore; }; 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< } 9.6题 #include {public: Student(intn,floats): num(n),score(s){}voidchange(intn,floats){num=n;score=s;}voiddisplay(){cout< intnum;floatscore; }; intmain() {Studentstud(101,78.5);stud.display();stud.change(101,80.5);stud.display();return0; } 9.7题 #include usingnamespacestd;classStudent {public: Student(intn,floats): num(n),score(s){}voidchange(intn,floats){num=n;score=s;}voiddisplay(){cout< //可改为: voiddisplay()const{cout< "< intnum;floatscore; }; intmain() {constStudentstud(101,78.5);stud.display();//stud.change(101,80.5);stud.display();return0; } 9.7题另一解 #include {public: Student(intn,floats): num(n),score(s){}voidchange(intn,floats)const{num=n;score=s;}voiddisplay()const{cout< mutableintnum;mutablefloatscore; }; intmain() {constStudentstud(101,78.5);stud.display();stud.change(101,80.5);stud.display();return0; } 9.7题另一解 Student(intn,floats): num(n),score(s){}voidchange(intn,floats){num=n;score=s;}voiddisplay(){cout< intnum;floatscore; }; intmain() {Studentstud(101,78.5);Student*p=&stud;p->display();p->change(101,80.5);p->display();return0; } A Student(intn,floats): num(n),score(s){}voidchange(intn,floats){num=n;score=s;}voiddisplay(){cout< mutableintnum;mutablefloatscore; }; intmain() {Studentstud(101,78.5);constStudent*p=&stud;p->display();p->change(101,80.5);p->display();return0; } B Student(intn,floats): num(n),score(s){}voidchange(intn,floats){num=n;score=s;}voiddisplay()const{cout< intnum;floatscore; }; intmain() {Studentstud(101,78.5);constStudent*p=&stud;p->display();stud.change(101,80.5);p->display();return0; } Student(intn,floats): num(n),score(s){}voidchange(intn,floats){num=n;score=s;}voiddisplay(){cout< intnum;floatscore; }; intmain() {Studentstud(101,78.5);Student*constp=&stud;p->display();p->change(101,80.5);p->display();return0; } 9.8题 Student(intn,floats): num(n),score(s){}voidchange(intn,floats){num=n;score=s;}voiddisplay(){cout< intnum;floatscore; }; intmain() {Studentstud(101,78.5);voidfun(Student&);fun(stud);return0; } voidfun(Student&stu){stu.display();stu.change(101,80.5);stu.display(); } 9.9题 #include {public: Product(intn,intq,float p): num(n),quantity(q),price(p){};voidtotal();staticfloataverage();staticvoiddisplay(); private: intnum;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: : display(){cout< } floatProduct: : average() {return(sum/n);} floatProduct: : discount=0.05;floatProduct: : sum=0;intProduct: : n=0; intmain() { ProductProd[3]={Product(101,5,23.5),Product(102,12,24.56),Product(103, 100,21.5)};for(inti=0;i<3;i++)Prod[i].total();Product: : display();return0; } 9.10题 #include {public: Time(int,int,int);friendvoiddisplay(constDate&,constTime&);private: inthour;intminute;intsec; }; Time: : Time(inth,intm,ints) {hour=h;minute=m;sec=s; } classDate {public: Date(int,int,int);friendvoiddisplay(constDate&,constTime&);private: intmonth;intday;intyear; }; Da
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 程序 设计 谭浩强 课后 习题 答案 完整版