计算机二级C++上机综合应用题

  为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的计算机二级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。