首页 > 全部 > 二级C++ > 国家二级C++机试(操作题)模拟试卷544

国家二级C++机试(操作题)模拟试卷544

本单篇文档共5272字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 章节练习 7036人下载
价格: 2.00 原价:¥8.00
收藏

国家二级C++机试(操作题)模拟试卷544

基本操作题

1.使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正确运行,并且使程序输出的结果为:

CMyObject,in the constmtor

~CMyObject,in the destrutor

注意:错误的语句在//******error******的下面,修改该语句即可。

1 #include<iostream.h>

2 class CMyObject

3 {

4 //******error******

5

6 //******error******

7 CMyObject{cout<<’’CMyObject,in the construtor’’<<end1;}

8 ~CMyObject(){cout<<’’~CMyObject,in the destrutor’’<<end1;}

9 };

10 void main()

11 {

12 CMyObject obj1;

13 }

(1)添加语句:public:

(2)CMyObject(){cout<<’’CMyObject,in the construtor”<<end1;}

解析:程序中定义了类CMyObject,含有一个构造函数和一个析构函数,在构造函数和析构函数中分别输出一段字符。

(1)构造函数和析构函数均为公有函数,而在C++中默认的访问属性为私有(private),因此构造函数和析构函数必须说明为public,即第1个标识下应添加“public:”。

(2)函数定义中在函数名后均有一对括号表示函数声明,因此第2个标识下应改为“CMyObjectO{cout<<’’CMyObject,in the construtor’’<<endl;}”。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。

程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:闰年输入月份大于3时需考虑多加一天)。

注意:只能补充函数func(int year,int month,int day),请勿改动其他部分的内容。

1 #include<iostream.h>

2 int func(int year,int month,int day)

3 {

4

5 }

6 void main()

7 {

8 cout<<func(2007,2,1)<<end1;

9 cout<<func(2007,i0,i0)<<end1;

10 cout<<func(2008,8,12)<<end1;

11 return;

12 }

1 int sum;

2 int leapyear;

3 switch(month)/*先计算某月以前月份的总天数*/

4 {

5 case 1:

6 sum=0;

7 break;

8 case 2:

9 sum=31;

10 break;

11 case 3:

12 sum=59;

13 break;

14 case 4:

15 sum=90;

16 break;

17 case 5:

18 sum=120;

19 break;

20 case 6:

21 sum=151;

22 break;

23 case 7:

24 sum=181;

25 break;

26 case 8:

27 sum=212;

28 break;

29 case 9:

30 sum=243;

31 break;

32 case 10:

33 sum=273;

34 break;

35 case 11:

36 sum=304;

37 break;

38 case 12:

39 sum=334;

40 break;

41 default:

42 cout<<’’data error’’<<end1;

43 break;

44 }

45 sum=sum+day;

46 if(year%400==0 ||(year%4==0&& year%100!=0))/*判断是不是闰年*/

47 leapyear=1;

48 else

49 leapyear=0;

50 if(1eapyear==1&&month>2)

51 sum++;

52 return sum;

解析:函数函数func(int year,int monm,int day返回某一天属于这一年的第几天,可以把该月之前的所有天数加起来再加上本月的第几天得到返回值,一种特殊情况需要注意,闰年时2月会多一天,这个时候可以先判断是否是闰年,如果是再看是不是二月以后,如果是则加在前面结果的基础上在加一天。

(1)为方便起见,先统计正常年份下,每个月的前面有多少天,可以用switch方式查询,然后再加上本月的日子,很快便得到了这一天是属于这一年的第几天。

(2)闰年的判断方法为:if(year%400==0||(year%4==0&&year%100!=0)),if语句为真则为闰年,二月之后的日期后需要加一天。

综合应用题

3.使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:

(1)完成类MyArrayClass的构造函数,申请数组的大小,请在注释//********1********后添加适当的语句。

(2)完成类MyArrayClass的析构函数,释放数组,请在注释//********2********后添加适当的语句。

(3)完成重载运算符“[]”,用来获得指定下标的数据,请在注释//********3********后添加适当的语句。

(4)完成函数SetElement(),用来设置指定下标的数据。如果数据没有超出范围,则设置数据,并返回1,否则返回0,请在注释//********4********后添加适当的语句。

注意:除在指定的位置添加语句外,并不要更改程序中的其他语句。

1 #include<iostream.h>

2 template<c

本文档预览:3600字符,共5272字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C++机试(操作题)模拟试卷544

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号