首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
admin
2019-05-22
56
问题
使用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与其他函数中的任何内容。
1 #include
2 #include
3 #include
4 #include
5 using namespace std;
6 void WriteFile(int c)
7 {
8 ofstream out1 ;
9 outl.open("modi3.txt",iosbase::app);
10 outl << c<< ’ ’;
11 outi.close();
12 }
13 void WriteFi le(char*str)
14 {
15 ofstream outl;
16 outl.open("modi3.txt",los_base::app);
17 outl<
18 outl.close();
19 }
20 void ClearFile()
21 {
22 ofstream outl ;
23 outl.open(”modi3.txt”);
24 outl.close();
25 }
26 class Date
27 {
28 public:
12 Date(int y,int m,int d)
30 {
31 //********2********
32
33 }
34 void print()const ;
35 //********3********
36
37 {
38 month+=m;
39 int i=month/12;
40 int J=month%12;
41 if(j==0)
42 {
43 year+=(i-1);
44 month=12;
45 }
46 else
47 {
48 year+=i;
49 month=j;
50 }
51 return *this ;
52 }
53 private:
54 //********1********
55
56 } ;
57 void Date::print()const
58 {
59 //********4********
60
61 WriteFile(year);
62 WriteFile("年");
63 WriteFile(month);
64 WriteFile("月");
65 WriteFile(day);
66 WriteFile("日");
67 }
68 int mein()
69 {
70 ClearFile();
71 Date Oly_day(2008,8,8);
72 Oly_day+=3 ;
73 OIy_day.print();
74 return 0;
75 }
选项
答案
(1)添加语句:int year,month,da.y; (2)添加语句:year=y; month=m; da.y=d; (3)添加语句:Date & operator+=(int m) (4)添加语句:cout<
解析
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已给定源程序的main主函数开始入手,可以看出程序通过调用类Date和函数print实现各种输出操作。
[解题思路]
(1)题目1要求“定义私有成员变量year、month、day”。在C++程序的pfivate区域中添加变量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()函数中补全其打印功能,即在第四个标识下添加“cout<
转载请注明原文地址:https://kaotiyun.com/show/YI8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
A、 B、 C、 D、 C如果在类以外的其他地方定义了一个函数,在类体中用friend对该函数进行声明,此函数就称为本类的友元函数。因为函数为voidfun(),根据友元定义补全语句为“friendvoi
自顶向下程序设计时,应先考虑总体,后考虑细节,逐步使问题具体化,对复杂的问题,应该设计一些子目标作为过渡,上述方法概括为:自顶向下,逐步细化。
A、 B、 C、 D、 D线性表的顺序存储是用一片连续的空间来存放数据元素,其特点是逻辑上相邻的元素在物理位置上也相邻。数据元素之间逻辑上的先后关系自动隐含在物理位置的相邻元素之中,因此不需要另外开辟空间来保
诊断和改正程序中错误的工作通常称为______。
类在面向对象方法中,把具有相同属性和方法的对象称为类,类是对象的抽象,对象是类的实例。
A、 B、 C、 D、 A关系的并运算是指,由结构相同的两个关系合并,形成一个新的关系,其中包含两个关系中的所有元组。
下列选项中,不属于面向对象程序设计特征的是A)继承性B)多态性C)类比性D)封装性
前后件关系在数据存储结构中,除了要存储数据,还要存储数据的前后件关系,对于顺序存储的数据结构,前后件之间的关系是通过存储空间的位置来实现的,而对于链式存储来说,数据元素之间的前后件关系是通过指针来实现的.
A、 B、 C、 D、 BE-R图具有三个要素:①实体(型)用矩形框表示,框内为实体名称;②属性用椭圆型来表示,并用线与实体连接。属性较多时也可以将实体及其属性单独列表;③实体间的联系用菱形框表示。用线将菱形
若要对类BigNumber中重载的类型转换运算符long进行声明,下列选项中正确的是()。A)operatorlong()const;B)operatorlong(bigNumber);C)longoperatorlong()
随机试题
美国管理学家_______首先注意到现代管理理论发展中多学派并存的局面。他在1961年发表了_______。
缮印公文时要对原稿的文字、标点、符号、文面格式等进行检查,发现有不当之处,负责缮印的人员要及时修改。
某市人民检察院对甲某的贪污案件进行了侦查,并逮捕了甲某。请回答下列问题。下列哪些案件由人民检察院立案侦查?()
依照题目中的意思,对于乙公司向甲公司提供的5台设备,甲公司是否都已经购买?已经购买的,购买时间分别是什么时候?在甲公司向乙公司购买设备租赁给丙公司后,非因质量问题,设备发生爆炸致人损害,对此谁需要承担赔偿责任?为什么?
甲公司为增值税一般纳税人,位于珠海,专门从事家用电器生产和销售。2016年6月发生如下事项。(1)将自产的冰箱、微波炉赠送给偏远地区的小学,该批冰箱和微波炉在市场上的含税售价共为58.5万元。(2)将自产的家用电器分别移送上海和深圳的分支机构用于销售,
财务预算的编制基础是()。
制定《卓越绩效评价准则》的根据有()。
当时的一些迹象已经让某种______的气氛在军营中弥漫开来,但那时战士们仍然不知道自己马上要前往朝鲜战场。填入画横线部分最恰当的一项是:
在VisualFoxPro中,下面的描述中正确是
Pollutionofwatersuppliesisusuallyduetopoorhealthconditionsclosetowatersources,sewage【T1】______intothesourcest
最新回复
(
0
)