为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的计算机二级C++上机综合应用题,供参考练习,预祝考生们考出自己理想的成绩!
综合应用题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。
1定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注释1后添加适当的语句。
2完成构造函数,分别给year、month、day赋值,请在注释2后添加适当的语句。
3完成重载符号“+=”的定义,请在注释3后添加适当的语句。
4完成函数print打印函数,如2005年1月5日到屏幕和文件out3.txt格式相同,请在注释4后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
试题程序:
#include
#include
#include
#include
usingnamespacestd;
voidWriteFileintc
ofstreamout1;
out1.open"out3.txt",ios_base::app;out1<<c<<’’;
out1.close;
voidWriteFilechar*str
ofstreamout1;
out1.open"out3.txt",ios_base::app;out1<<str;
out1.close;
voidClearFile
ofstreamout1;
out1.open"out3.txt":
outl.close;
classDate
public:
Dateinty,intm,intd
//********1*********
voidprint;
//********2********
month+=m:
inti=month/12;
intj=month%12;
ifj==0
year+=i-1:
month=12;
else
year+=i:
month=j;
return*this:
private:
//********3********
;
voidDate::print
//********4********
WriteFileyear;
WriteFile"年";
WriteFilemonth;
WriteFile"月";
WriteFileday;
WriteFile"日";
intmain
ClearFile;
DateNationa1_day2004,10,5;
National_day+=3;
National_day.print;
return0;
答案:
1应添加“year=y;month=m;day=d;”。
2应添加“Date&operator+=intm”。
3应添加“intyear,month,day;”。
4应添加“cout<<year<<"年"<<month<<"月"<<day<<"日"<<endl;”。
【解析】本题要求私有成员变量year、month、day为整形表示方法,所以注释3应添加“intyear,month,day;”;注释1要求分别给year、month、day赋值,根据上下文提意,所以应添加“year=y;month=m;day=d;”;注释2是对“+=”运算符的重栽,Date&operator4+=intm;第4处打印输出年、月、日,C++语言中,输出使用cout。