首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
56
问题
使用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://kaotiyun.com/show/zXNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列选项中属于C++语句的是()。
下列运算符不能重载为友元函数的是()。
下面程序运行后输出的结果是【】。#include<iostream>usingnamespacestd;classexample{constintm;public:example(inti)
在C++中,打开一个文件,就是将这个文件与一个【】建立关联,关闭一个文件,就是取消这种关联。
下面对于基类和派生类的描述错误的是()。
已知n是一个int型变量,下列语句中错误的是()。
若结构Arith中有一成员定义为char*op;,另有结构指针p定义为Arith*p=newArith.,则要访问p所指对象中的。p成员所指向的对象,应使用表达式【】。
以下定义语句中,错误的是______。
定义重载函数时,应在参数个数或参数类型上【】。
下列语句中,错误的是()。
随机试题
卡托普利是_______________抑制剂,其作用是使_______________生成减少,从而使血压_______________。
A.长期慢性咳嗽,咳痰和喘憋B.长期反复咯血C.两者均有D.两者均无支气管扩张的主要临床表现是
开展社区卫生服务要了解社区卫生状况,首先要做的是()。
隧道超欠挖原因有()
社区工作者组织成员参与集体行动,在参与过程中,让社区成员(),加强他们在社区参与及影响决策方面的能力和意识,发挥其潜能,以实现更和谐的社会。
“深蓝”曾跟卡斯帕罗夫对弈,结果败北。随后专家们一方面努力从硬件上提高“深蓝”的运算能力和速度,一方面加深“深蓝"对棋局的“理解”,终于使其棋力大增,最后战胜棋王。难怪卡斯帕罗夫在赛后说,这次比赛“是一群人运用电脑来向一个人的智慧和反应挑战”。机器的“思维
DNA复制需要
田间被闻一多称作为“_______”。
栈结构不适用于下列(46)应用。
Ann:IlikewatchingoldmoviesandIthinktheyarethebest.Mike:【D1】______eventhoughthey’reinblackandwhite.Ithin
最新回复
(
0
)