首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
admin
2019-05-22
43
问题
使用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://www.kaotiyun.com/show/YI8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
10.10此题考查的是引用的定义和使用。题目中r初始化为对x的引用,那么r的值就与x的值相等。
A、 B、 C、 D、 C线性表是一种线性结构,由n(n≥O)个元素组成,所以线性表可以是空表。但是在线性表中,第一个结点没有前件,最后一个结点没有后件,其他结点有且只有一个前件和后件,所以C是错误的。
A、 B、 C、 D、 CE-R模型中,有3个基本的抽象概念:实体、联系和属性。E-R图是E-R模型的图形表示法,在E-R图中,用矩形框表示实体,菱形框表示联系,椭圆形框表示属性。
A、 B、 C、 D、 B叶子结点总是比度为2的结点多一个。所以,具有60个叶子结点的二叉树有59个度为2的结点。总结点数:60个叶子结点+59个度为2的结点+50个度为1的结点=169个结点。
基类对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用基类的构造函数,再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。所以本题填:基类。
下列选项中,不属于面向对象程序设计特征的是A)继承性B)多态性C)类比性D)封装性
一个项目具有一个项目主管,一个项目主管只可管理一个项目,则实体“项目主管”与实体“项目”的联系属于______的联系。
若要对类BigNumber中重载的类型转换运算符long进行声明,下列选项中正确的是()。A)operatorlong()const;B)operatorlong(bigNumber);C)longoperatorlong()
数据字典是数据库设计需求分析阶段的重要工具之一,其最基本的方法是()。
随机试题
A.停经后少量阴道流血,轻微下腹痛,宫口未开,胎膜未破B.停经后多量阴道流血,下腹阵发性剧痛,宫口开大,胎膜已破C.停经后多量阴道流血,有肉样组织排出,子宫小于停经周数,宫口开大D.停经后出现反复阴道流血,子宫明显小于停经周数
A.壁细胞 B.主细胞 C.黏液细胞 D.幽门黏膜中G细胞 E.胃黏膜表面上皮细胞分泌盐酸的是()。
A、相须B、相使C、相畏D、相杀E、相恶石膏配知母属于七情中的
犯罪嫌疑人杜某在监视居住期间,找人威胁证人,致使证人拒绝作证,对此应当如何处理?()
水箱与建筑本体的关系。以下图示哪个错误?(2005,51)
某省为了满足本省的经济建设、城市规划、环境监测、水利建设资源开发等需要,计划在全省范围内利用GPS技术建立二等大地控制网。大地控制网的布设包括技术设计-实地选点-建造觇标-埋设标石-外业观测-数据处理-质量检查-成果提交等环节。现处于任务设计阶段。技术设
施工单位B分别在某省会城市远郊和城区承接了两个标段的堤防工程施工项目,其中防渗墙采用钢板桩技术进行施工。施工安排均为夜间插打钢板桩,白天进行钢板桩防渗墙顶部的混凝土圈梁浇筑、铺土工膜、植草皮等施工。施工期间由多台重型运输车辆将施工材料及钢板桩运抵作业现场,
()接受货主的委托,代表货主办理有关货物报关、交接、仓储、调拨、检验、包装、转运、订舱等业务的人。
在资本化期间内外币专门借款本金及利息的汇兑差额,应当予以资本化;外币一般借款本金及利息的汇兑差额应当予以费用化,计入当期损益。()
《信息技术服务运行维护第4部分:数据中心规范》(SJ/T11564.4--2015)通过例行操作、响应支持、优化改善、调研评估四种服务类型对数据中心运维对象提供服务,以保证数据中心连续、稳定、高效及安全的运行,运维服务的目标不包括()。
最新回复
(
0
)