首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
admin
2013-11-15
58
问题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注释1后添加适当的语句。
(2)完成构造函数,分别给year、month、day赋值。请在注释2后添加适当的语句。
(3)完成重载符号“+=”的定义,请在注释3后添加适当的语句。
(4)完成print打印函数,输出到屏幕和文件的格式相同,请在注释4后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
程序正常运行,输出的结果为2008年11月8日。
试题程序:
#include
#include
#include
#include
using namespace std;
void WriteFile(int c)
{
ofstream out1;
out1.open("3.txt",ios_base::app);
out1<
out1.close();
}
void WriteFile(char*str)
{
ofstream out1;
out1.open("3.txt",ios_base::app);
out1<
out1.close();
}
void ClearFile()
{
ofstream out1;
out1.open("3.txt");
out1.close();
}
class Date
{
public:
Date(int y,int m,int d)
{
//* * * * * * * * 1 * * * * * * * *
}
void print();
//* * * * * * * * 2 * * * * * * * *
{
month+=m:
int i=month/12:
int j=month%12;
if(j==0)
{year+=(i-1);
month=12:
}
else
{
year+=i:
month=j;
}
return *this;
}
private:
//* * * * * * * * 3 * * * * * * * *
};
void Date::print()
{
//* * * * * * * * 4 * * * * * * * *
WriteFile(year);
WriteFile("年");
WriteFile(month);
WriteFile("月");
WriteFile(day);
WriteFile("日");
}
int main()
{
ClearFile();
Date Oly_day(2008,8,8);
Oly_day+=3:
Oly_day.print();
return 0;
}
选项
答案
(1)应添加“year=y;month=m;day=d;”。 (2)应添加“Date & operator+=(int m)”。 (3)应添加“int year,month,day;”。 (4)应添加“cout<
解析
本题中第3处要求“定义私有成员变量year、month、day”。在C++程序的private区域中添加变量year、month、day的定义,即在第3处添加“int year,month,day;”。
第1处要求“完成构造函数,分别给year、month、day赋值”。在程序中“Date(int y,int m,int d)”的构造函数中添加给year、month、day赋值的语句,即在第1处添加“year=y;month=m;day=d;”。第2处要求“完成重载符号‘+=’的定义”。在C++中,运算符重载的定义方法是定义一个重载运算符的函数,格式为函数operator+重载运算符号+,所以这里补全“Date&operator+=(int m)”。
第4处要求“完成函数print()打印函数”。在C++中的print函数中补全其打印功能,即在第四个标识下添加“cout<
转载请注明原文地址:https://www.kaotiyun.com/show/zXNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为()。
以下程序的输出是【】。#include<iostream>usingnamespacestd;fun(intm){staticintn=1;n=m*n;return
下面对二维数组s的初始化语句,正确的是()。
C++源程序的扩展名为()。
下列程序的输出结果为【】。#include<iostream.h>voidmain(){chara[]="abcdabcabfgacd";inti1=0,i2=0,i=0;while(a[i]){
有如下函数模板定义:template<classT>Tfunc(Tx,Ty){returnx*x+y*y;}在下列对func的调用中,错误的是()。
在C++中,打开一个文件,就是将这个文件与一个【】建立关联,关闭一个文件,就是取消这种关联。
表达式8&3的结果是【】。
定义重载函数时,应在参数个数或参数类型上【】。
随机试题
形成人与自然和谐发展新格局,必须放在首位的是()。
一女性患者,诊断为巨大结节性甲状腺肿,在颈丛麻醉下行一侧甲状腺全切,一侧甲状腺次全切除术,术后第2天突然发生窒息,手足持续痉挛。此时首要的操作是
患者男,60岁。因“声音嘶哑半个月余伴咽痛”就诊,查体发现颈部可及2cm×4cm大小肿大淋巴结,颈部MRI提示:①右侧梨状窝新生物,侵及右侧声带,环状软骨部分受侵;②双侧颈部多个肿大淋巴结,最大径<6cm。患者经病检确诊为梨状窝低分化鳞癌,其他辅助检查
A、牙龈卟啉单孢菌B、粘性放线菌C、伴放线放线杆菌D、梭形杆菌和螺旋体E、中间普氏菌下列与牙周病最为密切的致病菌快速进展型牙周炎为
(2010)喷气式发动机尾喷管出口处,燃气流的温度为873K,流速为560m/s,蒸汽的等熵指数K=1.33,气体常数R=287.4J/(kg.K),则出口燃气流的马赫数为()。
下列选项中不属于结构化程序设计原则的是
Itispartly______thesummerdayislongerthateveryonecheersup.
ScientistsinIndiahaveinventedanewwaytoproduceelectricity.Theirinventiondoesnotgetitspowerfromoil,coaloroth
A、Theirdifferenteducationalbackgrounds.B、Changingattitudestowardnature.C、Chaostheoryanditsapplications.D、Thecurren
A、Howstudentsmanagetocompletetheirstudiessuccessfully.B、Howfamiliesmanagetodealwithvariouskindsofchallengingor
最新回复
(
0
)