首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释//********1****
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释//********1****
admin
2016-10-28
81
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释//********1********后添加适当的语句。
(2)完成判断数据成员date2是否是闰年函数intDate::IsLeapYear()定义,返回数据成员date2是否是闰年的值,是则返回1,否则返回0。请在注释//********2********后添加适当的语句。
(3)设置SetData0的默认时间为:2004-12-1,请在注释//********3********后添加适当的语句。
(4)完成主函数main(),完成输出date2 is a leapyear,请在注释//********4********后添加适当的语句。
提示:公元纪年的年数可以被四整除,即为闰年;被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。
注意:增加或修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include<iostream>
using namespace std;
class Date
{
public:
//********3********
void SetDate(int y,int m,int n);
int IsLeapYear();
void print()
{cout<<year<<"-"<<month<<"-"<<day<<endl;}
private:
//********1********
};
void Date::SetDate(int y,int m,int d)
{
year=y;
month=m;
day=d;
}
int Date::IsLeapYear()
{
//********2********
return
}
int main()
{
Date date1,date2;
date1.SetDate();
date2.SetDate(2004,12,1);
cout<<"date1:";
date1.Print();
cout<<"date2:";
date2.Print();
//********4********
cout<<"date2 is"<<(" ":"not")<<"a leapyear."<<endl;
return0;
}
选项
答案
(1)int year,month,day; (2)将“return”补充完整为:return(year%400==0)||(year%4==0&&year%100!=0); (3)将“void SetDate(int y,int m,int n);”补充完整为:void SetDate(int y=2004,int m=12,int n=1); (4)将“cout<<"date2 is"<<(" ":"not")<<"a leapyear.“<<endl;”补充完整为:cout<<”date2 is"<<(date2.IsLeapYear()?" ":"not")<<" aleapyear."<<endl;
解析
(1)题目1要求“定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据”。在程序中的Date类中的priate区域添加数据成员year、month、day的定义即可,其中它们的类型根据题目要求定义为int型。即在第1个标识下添加“int year,month.day;”。
(2)题目2要求“完成判断数据成员date2是否是闰年函数int Date::IsLeapYear()的定义”。公元纪年的年数可以被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。用程序语言表达为“(year%400==0)||(year%4==0&&year%100!=0)”,即在第2个标识补充的返回值语句为“return(year%400==0)||(year%4==0&&year%100!1=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.int m=12,int n=1);”。
(4)题目4要求“完成主函数main(),完成输出date2 is a leapyear”。标识4下的语句“cout<<"date2 is"<<" ":"not")<<"a leapyear."<<endl;”缺少字符串“date2 is”以及判断date2是否为润年的date2.IsLeapYear()函数调用,所以这条语句补全为“cout<<"date2 is"<<(date2.IsLeapYear()?" ":"not"1<<"a leapyear."<<endl;”。
转载请注明原文地址:https://kaotiyun.com/show/27Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
C++语言中的基本数据类型是()。
下面关于对象概念的描述中,()是错误的。
有如下程序:#include<iostream>usingnamespacestd;classshapes{protected:intx,y;public:void
下列类的定义中,有()处语法错误。classBase {public:Base(){}Base(inti){data=i;
算法的空间复杂度是指
下列有关析构函数的说法中,错误的是()。
从一个函数模板产的模板函数是同名的,因此编译器用______的解决方法调用相应函数。
运算符函数调用格式的表达式:y/x++与表达式:y.operator/(operator++(x,O))含义相同,由此可看出()。
在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
随机试题
在压裂施工中,压裂液的主要作用是()。
函数y=xlnx的单调递增区间是________.
下列化合物属于生物碱的为()
任某,女,20岁。3天前因食过量生冷食物并吹一夜空调,次日凌晨腹胀腹泻,今日加重,遂来急诊科就诊。患者现面色暗黄,口淡不渴,口腻纳呆,恶心欲吐,脘腹胀满,大便泻下清稀如水,5~6次/日,小便短少,舌淡红,脉迟缓。问题:写出八纲辨证结论。
某国有企业扩建项目,招标采购进口风力发电设备。按照正常程序开标、唱标,投标人确认了开标记录。其中,某日本公司投标文件中投标价为7480万日元FOB大阪,到货港为上海港,分50个20英尺集装箱运输。评标委员会进一步评审时发现,该公司随投标文件还送交了一份投
甲、乙、丙、丁四家施工企业组成联合体进行投标。联合体协议约定:因联合体的责任造成招标人损失时,甲、乙分别承担损失赔偿额的30%;丙、丁分别承担损失赔偿额的20%。若因该联合体的责任造成招标人损失100万元人民币,下列关于该损失赔偿的说法,正确的是(
某中外合资家电生产企业,为增值税一般纳税人,2014年销售产品取得不含税收入2500万元,会计利润600万元,已预缴所得税150万元。经会计师事务所审核,发现以下问题:(1)期间费用中广告费450万元、业务招待费15万元、经税务机关审定后,合理的研究开发
原上猿、埃及古猿、森林古猿
试述应纳税所得额和会计利润的联系和区别。
若变量x、y已定义为int类型,且x的值为99,y的值为9,则将输出语句printf(________,x/y)补充完整后,其输出的计算结果形式为x/y=11。横线处应填写的是()。
最新回复
(
0
)