首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注
admin
2015-07-20
67
问题
使用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://www.kaotiyun.com/show/gCNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若磁盘上已存在某个文本文件,其全路径文件名为d:\shiti\tes.txt,下列语句中不能打开该文件的是()。
有如下程序:#include<iostream>usingnamespacestd;intmain(){voidfunction(doubleval);doubleval;
对于下面定义的类MyClass,在函数f()中将对象成员n的值修改为50的语句应该是()。classMyClass{public:MyClass(intx){n=x;}voidSetNum(intn
下列函数的功能是判断字符串str是否对称,对称则返回true,否则返回false。请在横线处填上适当内容,实现该函数。boolfun(char*str){inti=0,j=0;while(str[j])【】;
设intx:,则经过______后,语句*px=0;可将x值置为0。
用二维表来表示实体及实体之间联系的数据模型称为______。
有以下程序#include<iostream.h>intf(intn){if(n==1)return1;elsereturnf(n-1)+1;}voidmain(){inti,j=0;for(i=1;i<3;i++)j+=f(
下列对重载函数的描述中,()是错误的。
已知:doubleA(doubleA){return++a;}和intA(inta){return++a;)是一个函数模板的两个实例,则该函数模板定义为【】。
随机试题
南京国民政府于1947年公布和实施《中华民国宪法》。下列选项中,对这部宪法表述正确的是()。
A、甲状腺激素B、糖皮质激素C、抗利尿激素D、胰岛素E、醛固酮能促进糖原合成、降低血糖的激素是()
下列关于还原型谷胱甘肽的叙述,不正确的是
慢性肉芽肿属于
清热泻火,利水通淋的方剂是
患者,男,40岁。胃脘部胀痛,疼痛连胁,嗳气频频,呕逆酸苦,苔薄白,脉沉弦。针灸时选
某企业统计员赵某,因未按厂长的意图上报统计资料,被厂长调到工厂车间做一线工作,该厂长的行为属于()。
2015年6月,甲公司、乙公司、丙公司和陈某共同投资设立丁有限责任公司(下称丁公司),丁公司章程规定:(1)公司注册资本500万元。(2)甲公司以房屋作价120万元出资;乙公司以机器设备作价100万元出资;陈某以货币100万元出资;丙公司出资180万元,首
古今异义的情况,不仅包括词义的变化、转移,也包括词的感情色彩的变化。()
改革开放以来,文学创作成就不菲,但缺乏_____、影响深远的力作。今天的文坛不能说不繁荣,然而繁荣也______不住其中的“虚荣”成分——虚假的繁荣。填入画横线部分最恰当的一项是:
最新回复
(
0
)