資源描述:
《面向?qū)ο骯面向?qū)ο罅?xí)題(南航皮德常)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、第8章習(xí)題:8-1、設(shè)計(jì)Date類,輸出合法日期。#includeusingnamespacestd;//類定義//classDate{intyear;//存儲(chǔ)日期的年份intmonth;//存儲(chǔ)日期的月份intday;//存儲(chǔ)日期的天數(shù)public:boolsetDate(constint,constint,constint);voiddisplay(void);char*getMonth(constint);};//類的實(shí)現(xiàn)////設(shè)置成員變量////mm:月份,dd:天數(shù),yy:年份////返回值:如果成功賦值則
2、返回true,否則返回false。//char*Date::getMonth(constintm){if(m==1)return"January";elseif(m==2)return"February";elseif(m==3)return"March";elseif(m==4)return"April";elseif(m==5)return"May";elseif(m==6)return"June";elseif(m==7)return"July";elseif(m==8)return"August";elseif(m==9)retu
3、rn"September";elseif(m==10)return"October";elseif(m==11)return"November";elsereturn"December";}//設(shè)置成員變量////參數(shù):mm:月份,dd:天數(shù),yy:年份////返回值:如果成功賦值則返回true,否則返回false//boolDate::setDate(constintmm,constintdd,constintyy){if(mm<1
4、
5、mm>12)returnfalse;if(dd<1
6、
7、dd>31)returnfalse;year=y
8、y;month=mm;day=dd;returntrue;}//在屏幕上顯示日期//voidDate::display(void){//按照"12-25-2004"的形式輸出日期cout<9、<"";}voidmain(void){DatemyDate;//存儲(chǔ)日期while(true){intyear;//臨時(shí)存儲(chǔ)年份intmonth;//臨時(shí)存儲(chǔ)月份intday;//臨時(shí)存儲(chǔ)天數(shù)cout<<"請(qǐng)按YYYY格式輸入年:";cin>>year;cout<<"請(qǐng)按mm格式輸入月:";cin>>month;cout<<"請(qǐng)按dd格式輸入日:";cin>>day;if(myDate.setDate(month,day,year))break;elsecout<<"日期輸入錯(cuò)誤,請(qǐng)重新輸入!"<10、日期是:";myDate.display();}8-2、設(shè)計(jì)一個(gè)人口類Population,存儲(chǔ)某年的人數(shù)、出生的人數(shù)和死亡人數(shù),其函數(shù)成員能返回出生率和死亡率。#includeusingnamespacestd;//類定義//classPopulation{intpnum;//存儲(chǔ)某年的人數(shù)intbirthnum;//存儲(chǔ)出生的人數(shù)intdeadnum;//存儲(chǔ)死亡的人數(shù)public:boolsetData(constint,constint,constint);floatbirthrate(){returnbi
11、rthnum/float(pnum);}floatdeadrate(){returndeadnum/float(pnum);}intgetpnum(){returnpnum;}intgetbirthnum(){returnbirthnum;}intgetdeadnum(){returndeadnum;}};//返回值:如果成功賦值則返回true,否則返回false//boolPopulation::setData(constintp,constintb,constintd){if(p<0)returnfalse;if(b>p
12、
13、b<0)r
14、eturnfalse;if(d>p
15、
16、d<0)returnfalse;pnum=p;birthnum=b;deadnum=d;returntrue;}voidmain(void){Popula