首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注
admin
2015-07-20
71
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注释∥********1********后添加适当的语句。
(2)完成构造函数,分别给year、month、day赋值,请在注释∥********2********后添加适当的语句。
(3)完成重载符号“+=”的定义,请在注释∥********3********添加适当的语句。
(4)完成print()打印函数,如2008年8月8日到屏幕和文件modi3.txt格式相同,请在注释∥********4********后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
#include
#include
#include
#include
US ing namespace std;
void WriteFile(int C)
{
ofstream outl;
outl.open(”modi3.txt”,los
—base::app);
outl<
outl.C10se();
}
void WriteFile(char*Str)
{
ofstream outl;
outl.open(“modi3.txt”,ios
—base::app);
outl<
outl.close();
}
void C1earFile()
{
ofstream outl ;
outl.open(“modi3.txt”);
outl.Close();
}
C1asS Date
{
public:
Date(int y,int m,int@D@
{
∥********2********
}
void print()const;
∥********3********
{
month+=m;
int i=month/12;
int j=month%f2’
if(j==0)
{
year+=(i一1);
month:12 ;
}
else
{
year+=1;
month=j;
}
return*this;
}
private:
∥********1********
);
VOid Date::print()const
{
∥********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)添加语句: int year,month,day; (2)添加语句:year=y;month=m; day=d; (3)添加语句:Date&operator+=(int m) (4)添加语句:cout<
解析
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已给定源程序的main主函数开始入手,可以看出程序通过调用类Date和函数print实现各种输出操作。
解题思路
(1)题目1要求“定义私有成员变量year、month、day”。在C++程序的private区域中添加变量year、month、day的定义,即在第1个标识下添加“int year,month,day;”。
(2)题目2要求“完成构造函数,分别给year、month、day赋值”。在程序中“Date(int y,int m,int@D@”的构造函数中添加给year、month、day赋值的语句,即在第2个标识下添加“year=y;month=m;day=d;”。
(3)题目3要求“完成重载符号“+=”的定义”。在C++中,运算符重载的定义方法是定义一个重载运算符的函数,格式为函数operator+重载运算符号+,所以这里补全“Date &operator+=(int m)”。
(4)题目4要求“完成函数print()打印函数”。在C++中的print(1函数中补全其打印功能,即在第四个标识下添加“cout<
转载请注明原文地址:https://kaotiyun.com/show/gCNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
软件生命周期一般可分为这样几个阶段:问题定义、可行性研究、【】、设计、编码、测试、运行和维护。
在C++中,数据封装要解决的问题是()。
关于链式存储结构和顺序存储结构的说法正确的是______。
使用操作符setw对数据进行格式输出时,需要包含______头文件。
设intx:,则经过______后,语句*px=0;可将x值置为0。
程序中有如下语句for(inti=0;i<5;i++)cout<<*(p+i)<<",";能够依次输出int型一维数组DATA的前5个元素。由此可知,变量p的定义及初始化语句是【】。
下面程序的输出是()。#defineN3#defineM(n)((N+1)*n)#include<iostrearn.h>voidmain(){intz=2*(N+M(5+1));cout<<z<<end1;}
若语句:cout<<seffill(’>’)<<setw(5)<<3141512<<sctw(5)<<"OK!";是程序中第1个输出语句,则输出结果是()。
创建对象数组时,对数组的每一个元素都将调用一次构造函数,如果没有显式给出数组元素的初值,则调用缺省构造函数。下列程序涉及对象数组的创建和单个对象的创建,其输出结果是【】。#include<iostream>usingnamespace
下面关于构造函数和析构函数的描述,错误的是()。
随机试题
Manystudentsfindtheexperienceofattendinguniversitylecturestobeaconfusingandfrustratingexperience.Thelecturersp
甲公司拥有“清凉一夏”的饮料自用商标,该商标经过几十年的长期使用,在国内公众中享有较高的声誉。同一地域生产牛奶的乙公司将“清凉一夏”注册商标,并用于自己的商品之上。对此,下列说法不正确的是?
某计算机生产企业正计划推出一种新款计算机。由于新产品的推出,有可能挤占该公司现有产品的用户。那么,下列看法中正确的有( )。
忠诚尽责,是调整基金从业人员与其所在机构之间关系的职业道德规范。忠诚尽责要求基金从业人员在工作中要做到两个方面:一方面是忠诚敬业;一方面是()。
统计表
调查发现,养宠物的人往往身体比较健康,心理比较乐观。由此,我们可以得出如下结论( )。
电影、霓虹灯活动广告等是按照______原理制作而成的。()
Manyanimalsareableto______theharmfuleffectsofcoldweatherbymeansoffeathers,fur,orblubber.
HomeschoolingappearstobeagreatIsuccessformiddle-classandwealthyfamilieswhenoneparentishomemostofthetime.Ho
Ahappymarriageapparentlyisgoodmedicine,buthostilespousesmaybeharmfultooneanother’shealth.Couplesin(36)______
最新回复
(
0
)