首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
admin
2019-05-22
32
问题
使用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、 A在基类中用virtual声明成员函数为虚函数,所以A是正确的。纯虚函数是在声明虚函数时被“初始化”为0的虚函数。纯虚函数是一种特殊的虚函数,它没有具体的实现。静态数据成员函数只能在类
A、 B、 C、 D、 D由主函数main入手,定义了类D对象obj。其中D为类B和C的公有继承,A是C的虚基类。题目中要求的输出结果为“ABCD”,依次为类A,类B,类c.类D中构造函数的输出语句。为了保证
A、 B、 C、 D、 Cfun()的第一个参数是传值调用,第二个是传址调用,故在函数中修改形参的值会被传回到实参中,故结果为0和2。
内聚性衡量软件的独立性使用耦合性和内聚性两个定性的度量标准。内聚性是一个模块内部各个元素间彼此结合的紧密程度的度量,内聚是从功能角度来度量模块内的联系。耦合性是模块间互相连接的紧密程度的度量。
内存地址指针变量指向的不是变量保存的数据值,而是变量的地址,所以指针变量保存的是对象的内存地址。
下列关于栈的叙述中,正确的选项是()。A)在栈中只能删除数据B)在栈中只能插入数据C)栈是先进先出的线性表D)栈是先进后出的线性表
类中的一个字符指针成员指向具有m个字节的存储空间时,它所能存储的字符串的最大长度为()。A)m-2B)m-1C)mD)m+1
按照标识符的要求,下列选项中,()符号不能组成标识符。
随机试题
AstudyinCyberpsychology,Behavior,andSocialNetworkingsuggeststhatartificialintelligenceholdsapromisingfutureinhe
氨氧化法制硝酸时,降低温度、提高压力,可以提高一氧化氮的氧化率。()
癃闭的出现。可由于
颞下颌关节内强直,X线检查骨粘连范围较广,下颌切迹变得狭小或已消失,最适宜选择下列哪种截骨手术方式
以下哪项不属于钢材的主要力学性能指标?
为了建立严格的内部控制制度,个人理财业务要求建立()
下列关于固定资产会计处理的表述中,不正确的是()。
《消费者权益保护法》明确规定,最终承担损害赔偿责任的主体包括()。
下列选项不属于新教育运动的原则的是
下列特征中不是面向对象方法的主要特征的是()。
最新回复
(
0
)