【计算机类职业资格】二级C++-19-1及答案解析.doc
《【计算机类职业资格】二级C++-19-1及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++-19-1及答案解析.doc(25页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+-19-1 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:40.00)1.下列数据结构中,属于非线性结构的是_。(分数:1.00)A.循环队列B.带链队列C.二叉树D.带链栈2.下列数据结构中,能够按照“先进后出”原则存取数据的是_。(分数:1.00)A.循环队列B栈C.队列D.二叉树3.对于循环队列,下列叙述中正确的是_。(分数:1.00)A.队头指针是固定不变的B.队头指针一定大于队尾指针C.队头指针一定小于队尾指针D.队头指针可以大于队尾指针,也可以小于队尾指针4.算法的空间复杂度是指_。(分数:1.00)A.算法在执行过程中所需要的计算
2、机存储空间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的临时工作单元数5.软件设计中划分模块的一个准则是_。(分数:1.00)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合6.下列选项中不属于结构化程序设计原则的是_。(分数:1.00)A.可封装B.自顶向下C.模块化D.逐步求精7.软件详细设计产生的图如下: (分数:1.00)A.N-S 图B.PAD 图C.程序流程图D.E-R 图8.数据库管理系统是_。(分数:1.00)A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译系统D.一种操作系统9.在 E-R 图中,用来表示实体联系
3、的图形是_。(分数:1.00)A.椭圆形B.矩形C.菱形D.三角形10.有三个关系 R,S 和 T 如下: R A B C a 1 2 b 2 1 c 3 1 S A B C d 3 2 T A B C a 1 2 b 2 1 C 3 1 d 3 2 其中关系 T 由关系 R 和 S 通过某种操作得到,该操作为_。(分数:1.00)A.选择B.投影C交D并11.下列符号中可以用做 C+标识符的是_。(分数:1.00)A._radiusB.foobarC.elseD.3room12.下列各组类型声明符中,含义相同的一组是_。(分数:1.00)A.unsigned long int 和 longB
4、.signed short int 和 shortC.unsigned short 和 shortD.short int 和 int13.必须用一对大括号括起来的程序段是_。(分数:1.00)A.switch 语句中的 case 标号语句B.if 语句的分支C.循环语句的循环体D.函数的函数体14.语句 int *p=定义了指针 p,与这个语句等效的语句序列是_。(分数:1.00)A.int *p; p=B.int *p; p=k;C.int *p; *p=D.int*p; *p=k;15.执行下列语句段后,输出字符“*”的个数是_。 for(int i=50; i1; i-=2)cout“*
5、“;(分数:1.00)A.24B.25C.26D.5016.下列关于运算符重载的叙述中,错误的是_。(分数:1.00)A.有的运算符可以作为非成员函数重载B.所有的运算符都可以通过重载而被赋予新的含义C.不得为重载的运算符函数的参数设置默认值D.有的运算符只能作为成员函数重载17.对 C+编译器区分重载函数无任何意义的信息是_。(分数:1.00)A.参数类型B.参数个数C.返回值类型D.常成员函数关键字 const18.运算符重载时不需要保持的性质是_。(分数:1.00)A.操作数个数B.操作数类型C.优先级D.结合性19.下列关于函数的描述中,错误的是_。(分数:1.00)A.函数可以没有返
6、回值B.函数可以没有参数C.函数可以是一个类的成员D.函数不能被定义为模板20.关于函数重载,下列叙述中错误的是_。(分数:1.00)A.重载函数的函数名必须相同B.重载函数必须在参数个数或类型上有所不同C.重载函数的返回值类型必须相同D.重载函数的函数体可以有所不同21.下列关于运算符重载的描述中,正确的是_。(分数:1.00)A.运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符B.一元运算符只能作为成员函数重载C.二元运算符重载为非成员函数时,参数表中有一个参数D.C+中可以重载所有的运算符22.有如下函数定义: void func(int a, int b+; 若执行代码段:
7、 int x=0, y=1; func(x, y); 则变量 x 和 y 的值分别是_。(分数:1.00)A.0 和 1B.1 和 1C.0 和 2D.1 和 223.对于一个类定义,下列叙述中错误的是_。(分数:1.00)A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数B.如果没有定义缺省的构造函数,编译器一定将生成一个缺省的构造函数C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数24.有如下头文件: int f1(); static int f2(); class MA public:
8、int f3(); static int f4(); ; 在所描述的函数中,具有隐含的 this 指针的是_。(分数:1.00)Af1Bf2Cf3Df425.下列关于类定义的说法中,正确的是_。(分数:1.00)A.类定义中包括数据成员和函数成员的声明B.类成员的缺省访问权限是保护的C.数据成员必须被声明为私有的D.成员函数只能在类体外进行定义26.如果派生类以 protected 方式继承基类,则原基类的 protected 成员和 public 成员在派生类中的访问属性分别是_。(分数:1.00)A.public 和 publicB.public 和 protectedC.protecte
9、d 和 publicD.protected 和 protected27.下列有关继承和派生的叙述中,正确的是_。(分数:1.00)A.派生类不能访问基类的保护成员B.作为虚基类的类不能被实例化C.派生类应当向基类的构造函数传递参数D.虚函数必须在派生类中重新实现28.有如下类定义: class AA int a; public: AA(int n=0): a(n) ; class BB: public AA public: BB(int n)_ ; 其中横线处缺失的部分是_。(分数:1.00)A.:a(n) B.:AA(n) C.a(n);D.a=n;29.有如下程序: #includeios
10、tream using namespace std; class CD public: CD() cout“C“; private: char name80; ; int main() CD a, *b, d2; return 0; 执行这个程序的输出结果是_。(分数:1.00)A.CCCCB.CCCC.CCDC30.有如下程序: #includeiostream using namespace std; class MyClass public: MyClass() +count; MyClass() -count; static int getCount() return count; p
11、rivate: static int count; ; int MyClass:count=0; int main() MyClass obj; coutobj. getCount(); MyClass*ptr=new MyClass; coutMyClass:getCount(); delete ptr; coutMyClass:getCount(); return 0; 执行这个程序的输出结果是_。(分数:1.00)A.121B.232C.221D.12231.有如下程序: #includeiostream using namespace std; class MyClass public
12、: MyClass(int x): val(x) void Print()const cout“const: val=“val“/t“; void Print() cout“val=“val“/t“; private: int val; ; int main() const MyClass obj1(10); MyClass obj2(20); obj1. Print(); obj2. Print(); return 0; 执行这个程序的输出结果是_。(分数:1.00)A.val=10 const: val=20B.const: val=10 const: val=20C.const: val
13、=10 val=20D.val=10 val=2032.有如下程序: #includeiostream using namespace std; class Part public: Part(int x=0): val(x) coutval; Part() coutval; private: int val; ; class Whole public: whole(int x, int y, int z=0): p2(x), p1(y), val(z) coutVal; Whole() coutval; private: Part p1, p2; int val; ; int main()
14、Whole obj(1, 2, 3); return 0; 执行这个程序的输出结果是_。(分数:1.00)A.123321B.213312C.213D.12312333.有如下程序: #includeiostream using namespace std; class Base public: Base(int x=0) coutx; ; class Derived: public Base public: Derived(int x=0) coutx; private: Base val; ; int main() Derived d(1); return 0; 执行这个程序的输出结果是_
15、。(分数:1.00)A.0B.1C.01D.00134.下列代码段中声明了 3 个类: class Person ; class Student: public Person ; class Undergraduate: Student ; 下列关于这些类之间关系的描述中,错误的是_。(分数:1.00)A.类 Person 是类 Undergraduate 的基类B.类 undergraduate 从类 Student 公有继承C.类 Student 是类 Person 的派生类D.类 Undergraduate 是类 Person 的派生类35.有如下程序: #includeiostream
16、 using namespace std; class Base public: void output() cout1; virtual void Print() cout“B“; ; class Derived: public Base public: void output() cout2; void Print() cout“D“; ; int main() Base *ptr=new Derived; ptr-output(); ptr-Print(); delete ptr; return 0; 执行这个程序的输出结果是_。(分数:1.00)A.1BB.1DC.2BD.2D36.有
17、如下程序: #includeiostream using namespace std; class B public: virtual void show() cout“B“; ; class D: public B public: void show() cout“D“; ; void fun1(B *ptr) ptr-show(); void fun2(B void fun3(B b) b. show(); int main() B b, *P=new D; D d; fun1(P); fun2(b); fun3(d); delete P; return 0; 执行这个程序的输出结果是_。
18、(分数:1.00)A.BBBB.BBDC.DBBD.DBD37.C+中的模板包括_。(分数:1.00)A.对象模板和函数模板B.对象模板和类模板C.函数模板和类模板D.变量模板和对象模板38.下列关于类模板的模板参数的叙述中,错误的是_。(分数:1.00)A.模板参数可以作为数据成员的类型B.模板参数可以作为成员函数的返回类型C.模板参数可以作为成员函数的参数类型D.模板参数不能作为成员函数的局部变量的类型39.下列关于 C+预定义流对象的叙述中,正确的足_。(分数:1.00)A.cin 是 C+预定义的标准输入流对象B.cin 是 C+预定义的标准输入流类C.cout 是 C+预定义的标准输
19、入流对象D.cout 是 C+预定义的标准输入流类40.有如下语句序列: char str10; cinstr; 当从键盘输入“I love this game”时,str 中的字符串是_。(分数:1.00)A.“I love this game“B.“I love thi“C.“I love“D.“I“二、基本操作题(总题数:1,分数:18.00)41.请使用 VC6 或使用答题菜单打开 proj1 下的工程 proj1,其中有枚举 DOGCOLOR、狗类 Dog 和主函数main 的定义。程序中位于每个“/ERROR *found*”下的语句行有错误,请加以改正。改正后程序的输出结果应该是
20、: There is a white dog named Hoho. There is a black dog named Haha. There is a motley dog named Hihi. 注意:只修改每个/ERROR *found*下的那一行,不要改动程序中的其他内容。 #includeiostream using namespace std; /狗的颜色:黑、白、黄、褐、花、其他 enum DOGCOLOR BLACK, WHITE, YELLOW, BROWN, PIEBALD, OTHER; class Dog /狗类 DOGCOLOR color; char name2
21、0; static int count; public: Dog(char name, DOGCOLOR color) strcpy(this-name, name); /ERROR *found* strcpy(this-color, color); DOGCOLOR getColor()const return color; /ERROR *found* const char*getName()const return*name; const char*getColorString()const switch(color) case BLACK: return “black“: case
22、WHITE: return “white“: case YELLOW: return “yellow“: case BROWN: return “brown“: case PIEBALD: return “piebald“: return “motley“; void show()const cout“There is a“getColorString()“dog named“name“.“endl: ; int main() /ERROR *found* Dog dog1(“Hoho“, WHITE), dog2(“Haha“, BLACK); dog3(“Hihi“, OTHER); do
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C191 答案 解析 DOC
