首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释∥********error*
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释∥********error*
admin
2021-02-22
61
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释∥********error********后添加适当的语句。
(2)完成判断数据成员date2是否是闰年函数intDate::IsLeapYear0定义,返回数据成员date2是否是闰年的值,是则返回1,否则返回0。请在注释∥********2********后添加适当的语句。
(3)设置SetData0的默认时间为:2004.12.1,请在注释∥********3********后添加适当的语句。
(4)完成主函数main(),完成输出date2 is a leapyear,请在注释∥********4********后添加适当的语句。
提示:公元纪年的年数可以被四整除,即为闰年;被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。
注意:增加或修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
1 #include
2 using namespace std;
3 C1ass Date
4 {
5 public:
6 ∥********3********
7 void SetDate(int y,int
m,int n);
8 int IsLeapYear();
9 VOid Print()
10 {cout<
<< "." <
Ii private:
12 ∥********1********
13
14 };
15 void Date::SetDate(int y,int
m,intd)
16 {
17 year=y;
18 month=m;
19 day=d;
20 }
21 int Date::IsLeapYear()
22 {
23 ∥********2********
24 return
2s }
26 int mein()
27 {
28 Date datel,date2 ;
2 9 datel.SetDate();
3 0 date2.SetDate(2 0 04,12,1);
3 1 cout<<“datel:”;
32 datel.Print();
33 cout<<“date2:”;
34 date2.Print();
35 ∥********4********
3 6 cout << “date2 iS”<<(“”:
”not”)<<“a leapyear.”<
37 return 0;
3 8 }
选项
答案
(1)int year,month,day; (2)将“return”补充完整为:return(year%400== 0)l l(year%4==0&&year%100 1=0); (3)将“void SetDate(int Y,int m,int n);” 补充完整为: void SetDate(int y=2 0 04,int m=12,int n=1); (4)将“cout<< “date2 is”<<(*’:"not。’)<<”a leapyear.fI<
解析
本题中程序的功能是判断2004年是否为闰年。其中成员函数SetDate设置日期,IsLeapYear函数判断是否为闰年。在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类Date和和其成员函数实现各种功能。
解题思路
(1)题目1要求“定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据”。在程序中的Date类中的priate区域添加数据成员year、month、day的定义即可,其中它们的类型根据题目要求定义为int型。即在第1个标识下添加“int year,month,day;”0
(2)题目2要求“完成判断数据成员date2是否是闰年函数int Date::IsLeapYear0的定义”。公元纪年的年数可以被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。用程序语言表达为“(year%400~0)ll(year%4=0&&year%100 !=0)”,即在第2个标识补充的返回值语句为“return(year%0400=0)‖(year%4=0&&year%100!=0);”。
(3)题目3要求“设置SetData()的默认时间为:2004-12-1”。程序中类Date的成员函数定义为“void SetDate(int y,int m,int n);”,设置默认时间为:2004—12-1,就是设置SetDate函数中的变量值分别为2004,12,1。即成员函数的定义语句修改为“void SetDate(int y=2004,intm=12,int n=1);”。
(4)题目4要求“完成主函数main(),完成输出date2 isa leapyear”。标识4下的语句“cout<<“date2 is“<<(“”:“not”)<<“a leapyear.”<
转载请注明原文地址:https://www.kaotiyun.com/show/xsfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:ciassA{char*a;public:A():a(0){}A(char*aa){//把aa所指字符串拷贝到a所指向的存储空间a=_____;strcpy(a,aa);
关系模型中的关系模式至少应是
下列叙述中正确的是
有如下程序:#include<iostream>#include<cstring>usingnamespacestd;classMyString{public:charstr[80];
下列有关模板的叙述中,正确的是()。
设二叉树的前序序列与中序序列均为ABCDEFGH,则该二叉树的后序序列为
下列选项中不属于结构化程序设计原则的是
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:10TestClass1注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//****
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中定义了MyString类,一个用于表示字符串的类。成员函数reverse的功能是将字符串进行“反转”。例如,将字符串ABCDEF“反转”后,得到字符串FEDCBA;将字符串ABC
下列字符串中不能作为C++标识符使用的是()。
随机试题
有学生成绩表:SC(学号,课程号,分数),已知一个学生可以选多门课,一门课有多个学生选,则SC表的主键应该是()
有关强直性脊柱炎,下列各项不恰当的是
男,60岁。剧烈胸痛2.5小时。心电图Ⅱ、Ⅲ、aVF、V5~V6导联ST段弓背向上抬高0.4mV,此时最可能升高的实验室检查指标是
根据《中华人民共和国防洪法》的要求,建设跨河、穿河、穿堤、临河的桥梁、码头等工程设施,应当符合防洪标准、岸线规划、航运要求和其他技术要求,不得危害堤防安全,影响河势稳定、妨碍行洪畅通;其()应当事先经有关水行政主管部门根据前述防洪要求审查同意。
不必采用订本式账簿的是()。
法律是国家意志的体现。中国古代成文法自战国时代的《法典》开始,到秦汉时代,都是按照儒家精神制订的。中华法系形成的标志是《唐律》的制定和《唐律疏议》的撰写。以判例法为主要法律形式是中华法系的鲜明特点。材料公元395年,罗马帝国一分为二。奴隶
在心理健康教育的众多原则中,()是美国人本主义心理学家罗杰斯提出的。
科学发展观的本质和核心是:
唯物辩证法的本质和核心是( )。
下列选项中属于构造主义学派的心理学家是
最新回复
(
0
)