欢迎来到天天文库
浏览记录
ID:12076196
大小:146.00 KB
页数:29页
时间:2018-07-15
《面向对象a面向对象习题(南航皮德常)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第8章习题:8-1、设计Date类,输出合法日期。#includeusingnamespacestd;//类定义//classDate{intyear;//存储日期的年份intmonth;//存储日期的月份intday;//存储日期的天数public:boolsetDate(constint,constint,constint);voiddisplay(void);char*getMonth(constint);};//类的实现////设置成员变量////mm:月份,dd:天数,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";
3、elseif(m==9)return"September";elseif(m==10)return"October";elseif(m==11)return"November";elsereturn"December";}//设置成员变量////参数:mm:月份,dd:天数,yy:年份////返回值:如果成功赋值则返回true,否则返回false//boolDate::setDate(constintmm,constintdd,constintyy){if(mm<1
4、
5、mm>12)returnfalse;if(dd<1
6、
7、
8、dd>31)returnfalse;year=yy;month=mm;day=dd;returntrue;}//在屏幕上显示日期//voidDate::display(void){//按照"12-25-2004"的形式输出日期cout<9、<<""<>year;cout<<"请按mm格式输入月:";cin>>month;cout<<"请按dd格式输入日:";cin>>day;if(myDate.setDate(month,day,year))break;else10、cout<<"日期输入错误,请重新输入!"<usingnamespacestd;//类定义//classPopulation{intpnum;//存储某年的人数intbirthnum;//存储出生的人数intdeadnum;//存储死亡的人数public:boolsetData(const11、int,constint,constint);floatbirthrate(){returnbirthnum/float(pnum);}floatdeadrate(){returndeadnum/float(pnum);}intgetpnum(){returnpnum;}intgetbirthnum(){returnbirthnum;}intgetdeadnum(){returndeadnum;}};//返回值:如果成功赋值则返回true,否则返回false//boolPopulation::setData(constin12、tp,constintb,constintd){if(p<0)returnfalse;if(b>p13、14、b<0)returnfalse;if(d>p15、16、d<0)returnfalse;pnum=p;birthnum=b;deadnum=d;returntrue;}voidmain(void){Popula
9、<<""<>year;cout<<"请按mm格式输入月:";cin>>month;cout<<"请按dd格式输入日:";cin>>day;if(myDate.setDate(month,day,year))break;else
10、cout<<"日期输入错误,请重新输入!"<usingnamespacestd;//类定义//classPopulation{intpnum;//存储某年的人数intbirthnum;//存储出生的人数intdeadnum;//存储死亡的人数public:boolsetData(const
11、int,constint,constint);floatbirthrate(){returnbirthnum/float(pnum);}floatdeadrate(){returndeadnum/float(pnum);}intgetpnum(){returnpnum;}intgetbirthnum(){returnbirthnum;}intgetdeadnum(){returndeadnum;}};//返回值:如果成功赋值则返回true,否则返回false//boolPopulation::setData(constin
12、tp,constintb,constintd){if(p<0)returnfalse;if(b>p
13、
14、b<0)returnfalse;if(d>p
15、
16、d<0)returnfalse;pnum=p;birthnum=b;deadnum=d;returntrue;}voidmain(void){Popula
此文档下载收益归作者所有