首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释//********1
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释//********1
admin
2018-10-23
42
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义私有数据成员year、month、day,分别用于年、月、日,它们都是int型的数据,请在注释//********1********后添加适当的语句。
(2)完成判断数据成员date2是否是闰年函数intDate::IsLeapYear()的定义,返回数据成员date2是否是闰年的值,是则返回1,否则返回0。请在注释//********2********后添加适当的语句。
(3)设置SetData()的默认时间为:2004-12-1,请在注释//********3********添加适当的语句。
(4)完成主函数main(),完成输出date2 is aleapyear,请在注释//********4********后添加适当的语句。
提示:公元纪年的年数可以被四整除,即为闰年;被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。
注意:增加或修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
1 #include<iostream>
2 using namespace std;
3 class Date
4 {
5 public:
6 //********3********
7 void SetDate(int y,int m,int n);
8 int IsLeapYear();
9 void Print()
10 {cout<<year<<’’-’’<<month<< ’’-’’ <<day<<end1;}
11 private:
12 //********1********
13
14 };
15 void Date::SetDate(int y,int m,int d)
16 {
17 year=y;
18 month=m;
19 day=d;
20 }
21 int Date::IsLeapYear()
22 {
23 //********2********
24 return
25 }
26 int main()
27 {
28 Date date1,date2;
29 date1.SetDate();
30 date2.SetDate(2004,12,1);
31 cout<<’’date1:’’;
32 date1.Print();
33 cout<<’’date2:’’;
34 date2.Print();
35 //********4********
36 cout << ’’ate2 is’’<<{’’ ’’:’’not’’)<<’’a leapyear.’’<<end1;
37 return 0;
38 }
选项
答案
(1)int year,month,day; (2)将“return”补充完整为:return fyear%400==0)||(year%4==0&&year%100!=O); (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.’’<<end1;’’补充完整为:cout<<’’date2 is’’<<(date2.IsLeapYear()?’’’’:’’not’’)<<’’a leapyear.’’<<end1;
解析
本题中程序的功能是判断2004年是否为闰年。其中成员函数SetDate设置日期,IsLeapYear函数判断是否为闰年。在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类Date和和其成员函数实现各种功能。
(1)题目1要求“定义私有数据成员year、month、day,分别用于年、月、日,它们都是im型的数据”。在程序中的Date类中的priate区域添加数据成员year、month、day的定义即可,其中它们的类型根据题目要求定义为int型。即在第1个标识下添加“int year,month,day;”。
(2)题目2要求“完成判断数据成员date2是否是闰年函数int Date::IsLeapYear0的定义”。公元纪年的年数可以被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。用程序语言表达为“(year%400==0)||(year%4==0&&year%100!=0)”,即在第2个标识补充的返回值语句为“return(year%400==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,int m=12,int n=1);”。
(4)题目4要求“完成主函数main(),完成输出date2 is a leapyear”。标识4下的语句“cout<<’’date2 is’’<<(’’’’:’’not’’)<<’’a leapyear.’’<<end1;”缺少字符串“date2 is”以及判断date2是否为润年的date2.IsLeapYear()函数调用,所以这条语句补全为“cout<<’’date2 is’’<<(date2.IsLeapYear()?’’’’:"not’’)<<’’a leapyear.’’<<end1;”。
转载请注明原文地址:https://kaotiyun.com/show/v5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为______。
以下程序的输出结果是inta,b;voidfun(){a=100;b=200;)main(){inta=5,b=7;fun();cout<<a<<b<<endl;}
下列程序的输出结果是main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}cou
下列有关数据库的描述,正确的是
如果类中的一个成员函数的定义实现在类内,则该函数系统自动默认为该类的______函数。
以下关于友元函数的叙述不正确的是()。
下列定义中p指向的地址可更改,但*p不能够更改的是()。
关系模型允许定义3类数据约束,下列不属于数据约束的是()。
下列有关数据库的叙述,正确的是()。
下列程序用于将源文件中的字母进行大小写转换,请填写while的请句。#include<iostream.h>#include<fstream.h>#include<iomanip.h>voidmain(){cha
随机试题
深昏迷包括【】
Theprogramoneducationis______watching.
初产妇,30岁,妊娠38周,自然分娩一健康男婴,阴道侧切,胎盘也正常娩出。产后1小时发现产妇面色苍白,出冷汗,阴道流血量较多,主诉头晕,心慌和口渴。血压11.97/6.65kPa(90/50mmHg),脉搏每分钟120次。既往血小板减少症,无高血压及低血压
患者男性,67岁。发热伴右上腹钝痛2天,恶心,食欲下降、乏力。继往有糖尿病史。查体:T39.4℃,右下胸及肝区叩击痛,右上腹肌紧张及触痛。X线胸腹部检查示:肝影增大伴局限性隆起,右膈肌上抬。18F-FDGPET示肝右叶放射性分布局灶性异常浓聚,SUVa
患儿,5个月。突然烦躁高热,吃奶后频繁呕吐,眼神呆滞,意识模糊,前囟饱满。脑脊液细胞数600×106/L,其中多核细胞68%,糖2.1mmol/L,氯化物126mmol/L,蛋白质1.4g/L。最可能的诊断为()
下列哪一选项是正确的()
下列关于装载入境动物的运输工具的检疫说法正确的是( )。
蒲松龄所著的文言短篇小说集《聊斋志异》,以谈鬼写狐的表现方式,揭露和抨击了封建社会的丑恶,赞美了作者心目中理想的爱情。()
Simonalastwrotetomesevenmonthsago.heardI____________________Simonaforsevenmonths.
Itdoesn’tmatter______he’scomebackornot.
最新回复
(
0
)