【计算机类职业资格】二级C++模拟495及答案解析.doc
《【计算机类职业资格】二级C++模拟495及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++模拟495及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+模拟 495及答案解析(总分:173.50,做题时间:90 分钟)一、选择题(总题数:40,分数:73.50)1.下列字符串中不能作为 C+标识符使用的是_。(分数:2.00)A.DOUBLEB.abcC._5_D.xyz2.已知枚举类型声明语句为: enumCOLORWHITE,YELLOW,GREEN=5,RED,BLACK=10; 则下列说法中错误的是(分数:2.00)A.枚举常量 YELLOW的值为 1B.枚举常量 RED的值为 6C.枚举常量 BLACK的值为 10D.枚举常量 WHITE的值为 13.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统
2、阶段。 其中数据独立性最高的阶段是(分数:1.00)A.数据库系统B.文件系统C.人工管理D.数据项管理4.有以下程序: #include iostream #include fstream using namespace std; int main ( ) ofstream ofile; char ch; ofile.open (“abc.txt“); cinch; while (ch!=“#“ ) cinch; ofile.put(ch); ofile.close(); return 0; 当从键盘终端连续输入的字符为 a、b、c 和#时,文件 abc.txt中的内容为 _ 。(分数:1.
3、00)A.程序编译时出错B.abc#C.abcD.#5.下列叙述中正确的是(分数:2.00)A.实体集之间一对一的联系实际上就是一一对应的关系B.关系模型只能处理实体集之间一对一的联系C.关系模型属于格式化模型D.以上三种说法都不对6.有如下程序: #includeiostream #includecmath using std:cout; class Point public: friend double distance(const Point /p距原点的距离 Point(int xx=0, int yy=0):x(xx), y(yy) / private: int x, y; ; do
4、uble distance(const Point int main() Point p1(3, 4); coutdistance(p1); / return 0; 下列叙述中正确的是_。(分数:2.50)A.程序编译正确B.程序编译时语句出错C.程序编译时语句出错D.程序编译时语句出错7.面向对象的设计方法与传统的面向过程的方法有本质不同,它的基本原理是_。(分数:2.50)A.模拟现实世界中不同事物之间的联系B.强调模拟现实世界中的算法而不强调概念C.使用现实世界的概念抽象地思考问题从而自然地解决问题D.鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考8.决定 C语言中函数的返回值
5、类型的是(分数:2.00)A.return语句中的表达式类型B.调用该函数时系统随机产生的类型C.调用该函数时的主调用函数类型D.在定义该函数时所指定的数据类型9.有下列程序: #include stdio.h int fun(int a,int b) if(b=0) return a; else return(fun(-a,-b); void main() printf(“%d/n“,fun(4,2); 程序的运行结果是_。(分数:2.50)A.1B.2C.3D.410.在关系数据库中,用来表示实体间联系的是_。(分数:2.50)A.二维表B.树状结构C.属性D.网状结构11.已知枚举类型声
6、明语句为: enum COLORWHITE,YELLOW,GREEN=5,RED,BLACK=10; 则下列说法中错误的是_。(分数:2.00)A.枚举常量 YELLOW的值为 1B.枚举常量 RED的值为 6C.枚举常量 BLACK的值为 10D.枚举常量 WHITE的值为 112.以下正确的描述为(分数:2.00)A.每个 C+语言程序必须在开头用预处理命令:B.预处理命令必须位于 C+源程序的首部C.在 C+语言中预处理命令都以“#”开头D.C+语言的预处理命令只能实现宏定义和条件编译的功能13.关于抽象类下面说法正确的是(分数:1.00)A.抽象类就是其中有函数定义但没有实现的类B.抽
7、象类是可以被实例化的C.派生类不能成为抽象类D.抽象类的子类必须实现父类中的纯虚函数14.若有以下程序: #include iostream using namespace std; class Base private: int a,b; public: Base(int x, int y) a=x; b=y; void show() couta“, “bend1; ; class Derive : public Base private: int c, d; public: Derive(int x, int y, int z,int m):Base(x,y) c=z; d=m; void
8、 show() coutc“, “dend1; ; int main ( ) Base b(50,50) ,*pb; Derive d(10,20,30,40); pb= pb-show ); return 0; (分数:1.00)A.10,20B.30,40C.20,30D.50,5015.下面程序的运行结果是 #includeiostream,h void fun(int*a,int*b) int X= *a; * a= *b; *b=X; cout *a *b“ “; void main() int x=1, y=2; fun(B.Decr operator-(DecrC.friend
9、DecrD.friend Decr operator-(Decr17.下列有关类继承的叙述中,错误的是_。(分数:1.00)A.继承可以实现软件复用B.虚基类可以解决由多继承产生的二义性问题C.派生类构造函数要负责调用基类的构造函数D.派生类没有继承基类的私有成员18.索引属于_。(分数:2.50)A.模式B.内模式C.外模式D.概念模式19.若进栈序列为 a,b,c,则通过入出栈操作可能得到的 a,b,c 的不同排列个数为 _。(分数:2.00)A.4B.5C.6D.720.下面程序的运行结果是_。 #includeiostream.h void main() int i=1; while(
10、i=8) if(+i%3!=2)continue; clse couti; (分数:2.50)A.25B.36C.258D.36921.一个满二叉树其深度为 4,则其叶子节点的个数为 _ 。(分数:1.00)A.8B.16C.32D.422.下列叙述中正确的是_。(分数:1.00)A.栈是一种先进先出的线性表B.队列是一种后进先出的线性表C.栈与队列都是非线性结构D.以上三种说法都不对23.下列程序的运行结果为 #includeiostream.h void main( ) int a2; int ba1; cout a/b endl; (分数:2.00)A.0.66667B.0C.0.7D.
11、0.6666666624.有如下程序: #includeiostream using namespace std; int main() void function(double val); double val; function(val); coutval; return 0; void function(double val) val=3; 编译运行这个程序将出现的情况是_。(分数:2.00)A.编译出错,无法运行B.输出:3C.输出:3.0D.输出一个不确定的数25.下面描述正确的是_。(分数:1.00)A.软件测试是指动态测试B.软件测试可以随机地选取测试数据C.软件测试是保证软件质
12、量的重要手段D.软件测试的目的是发现和改正错误26.有如下程序: #includeiostream using namespace std; class CD public: CD() cout“C“; private: char name80); ; int main() CD a, *b, d2; return 0; 运行时的输出结果是_。(分数:2.50)A.CCCCB.CCCC.CCDC27.以下函数值的类型是 fun(float x) float y; y=3*x-4; return y; (分数:2.00)A.intB.不确定C.voidD.float28.若 AA为一个类,a 为
13、该类的私有整型数据成员,getA()为该类的一个非静态公有成员函数,功能是返回 a的值。如果 x为该类的一个对象,要在类外访问 x对象中 a的值,正确的访问格式为_。(分数:2.50)A.AA.getA()B.getA()C.aD.AA:a29.下列关于抽象类的表述中正确的是_。(分数:2.50)A.派生类必须要实现作为基类的抽象类中的纯虚函数B.抽象类的成员函数至少有一个没实现C.抽象类不可能用来定义对象D.派生类不能成为抽象类30.关系数据库管理系统能实现的专门关系运算包括_。(分数:1.00)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表31.运行以下程
14、序后,如果从键盘上输入 shose后回车,则输出结果为 _。 # includeiostream.h void main() int v1=0,v2=0,k=0; char ch80; cinch; while(chk) switch(chk) case “s“; case “h“; default: v1+1; case “o“: v2+; k+; coutv1 “,“v2end1; (分数:2.00)A.2, 0B.5, 0C.4, 5D.2, 532.已知类 Base和类 Derived的定义如下: class Base int n; public; Base(int d); n(d)
15、; class Derived: public Base public: _ ; 其中横线处应为类 Derived的构造函数的定义。 在下列构造函数的定义中正确的是_。(分数:2.50)A.Derived(int i)Base(i); B.Derived(int i): Base(i); C.Derived(int i)n=i; D.Derived(int i): n=i33.下面程序的输出结果是_。 #include iostream using namespace std; int fun(char *s); int main() coutfun(“Hello“); return 0; i
16、nt fun(char *s) char *t=s; while(*t!=“/0“)t+; return(t-s); (分数:3.00)A.语法错,不能输出正确结果B.5C.6D.034.对类的构造函数和析构函数描述正确的是 _ 。(分数:2.00)A.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载35.对关系 S和 R进行集合运算,产生的元组属于 S中的元组,但不属于 R中的元组,这种集合运算称为 _ 。(分数:2.00)A.并运算B.交运算C.差运算D.积运算36.执行下列语句段后 i
17、nt n=0;for(int i=70;i0;i-=3)n+; n的值是_。(分数:2.00)A.23B.24C.25D.7137.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS之间的关系是 _ 。(分数:2.00)A.DB包含 DBS和 DBMSB.DBMS包含 DB和 DBSC.DBS包含 DB和 DBMSD.没有任何关系38.有如下程序: # includc iostream using namespace std; class Test public: Test() Test(const Testt)cout1; ; Test fun(Testu)Test t=u;retu
18、rn t; int main()Test x,y;x=fun(y);return 0; 运行这个程序的输出结果是_。(分数:2.50)A.无输出B.1C.11D.11139.结构化程序设计的三种基本结构是_。(分数:1.00)A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移40.C+语言中关于构造函数的说法正确的是_。(分数:1.00)A.构造函数的函数名不必和类名相同B.构造函数只能有一个C.每个类必定有构造函数D.构造函数必有返回值二、基本操作题(总题数:1,分数:30.00)41.使用 VC6打开 proj1 下的工程 proj1,其中定义了一个 CD
19、类。程序中位于每个/ERROR*found*下的语句行有错误,请加以更正,不得修改程序的其他部分。更正后程序的输出应该是: 歌唱祖国 30 义勇军进行曲 95 注意:只能修改每个/ERROR*found*下的那一行,不要改动程序中的其他内容。 #includeiostream #includecstring using namespace std; class CD char name20; int number; public: void init(char*aa,int bb) /ERROR*found* name=aa; number=bb; char*getName() /ERROR*
20、found* return*name; int getNumber()return number;) void output() /ERROR*found* coutname20“numberendl; ; void main() CD dx,dy; dx.init(“歌唱祖国“,30); dy.init(“义勇军进行曲“,3*dx.getNumber()+5); dx.output(); dy.output(); (分数:30.00)_三、简单应用题(总题数:1,分数:30.00)42.请使用 VC6或使用【答题】菜单打开 proj2 下的工程 proj2,该工程中含有一个源程序文件proj
21、2.cpp,其中定义了 CharShape类、Triangle 类和 Rectangle类。 CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数 Show用于显示不同字符图形的相同操作接口。Triangle 和 Rectangle是 CharShape的派生类,它们分别用于表示字符三角形和字符矩形,并且都定义了成员函数 Show,用于实现各自的显示操作。程序的正确输出结果应为: * * * * # # # 请阅读程序,分析输出结果,然后根据以下要求在横线处填写适当的代码并删除横线。 (1)将 Triangle类的成员函数 Show补充完整,使字符三角形的显示符合
22、输出结果。 (2)将 Rectangle类的成员函数 Show补充完整,使字符矩形的显示符合输出结果。 (3)为类外函数 fun添加合适的形参。 注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“/ *found*”。 / proj2.cpp #include iostream using namespace std; class CharShape public: CharShape(char ch) : _ch(ch) ; virtual void Show() = 0; protected: char _ch; /组成图形的字符 ; class Triangle
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 模拟 495 答案 解析 DOC
