计算机等级 百分网手机站

9月计算机二级C++考试模拟试题

时间:2017-06-14 12:04:13 计算机等级 我要投稿

2017年9月计算机二级C++考试模拟试题

  C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。下面是关于计算机二级C++考试模拟试题,希望大家认真练习!

  单选题

  1). 下列关于C++语言类的描述中错误的是

  A.类用于描述事物的属性和对事物的操作

  B.类与类之间通过封装而具有明确的独立性

  C.类与类之间必须是平等的关系,而不能组成层次结构

  D.类与类之间可以通过一些方法进行通信和联络

  正确答案:C

  答案解析:C++语言中的类是可以组成层次结构的,类是用于描述事物的属性和对事物的操作,类与类之间有相对的独立性,但其可以通过一些方法进行信息的通信。

  2). 下面关于C++语言变量的叙述错误的是

  A.C++语言中变量分为auto,static,extern和register四种存储类型

  B.自动变量和外部变量的作用域为整个程序

  C.内部静态变量的作用域是定义它的函数

  D.外部静态变量的作用域是定义它的文件

  正确答案:B

  答案解析:自动变量是函数体或分程序内定义的变量,它的作用域在所定义的函数体内或分程序体内。

  3). 若有说明int a[3][4];,则a数组元素的非法引用是( )

  A.a[0][2*1]

  B.a[1][3]

  C.a[4-2][0]

  D.a[0][4]

  正确答案:D

  4). 下列是重载为非成员函数的运算符函数原型,其叶错误的是( )。

  A.Fraction operator+( Fraction, Fraction);

  B.Fraction operator-( Fraction);

  C.Fraction&operator=( Fraction&, Fraction);

  D.Fraction&operator+=(Fraction& ,Fraction);

  正确答案:C

  答案解析:由于取负运算符″一″是一元运算符,当作为成员函数重载时参数表中没有参数,那个唯一的操作数以this指针的形式隐藏在参数表中。

  5). while 和do-while循环的'主要区别是

  A.do-while的循环体至少无条件执行一次

  B.while的循环控制条件比do-while的循环控制条件更严格

  C.do-while允许从外部转到循环体内

  D.do-while 的循环体不能是复合语句

  正确答案:A

  答案解析:while是先判断条件再执行语句;do-while则是先执行一次语句再判断条件,从而决定是否继续再执行循环体中的语句,这正是二者主要区别。

  6). 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下列属于应用软件的是( )。

  A.编译程序

  B.操作系统

  C.教务管理系统

  D.汇编程序

  正确答案:C

  答案解析:编译程序和汇编程序属于开发工具;操作系统属于系统软件;教务管理系统属于应用软件。

  7). 在C++语言中,封装是借助于什么达到的?

  A.结构

  B.类

  C.数组

  D.函数

  准确答案:B

  答案解析:C++基本的性质就是它的封装性,而封装性主要是靠类来实现的。

  8). 以下伟德国际友元函数的叙述禁绝确的是( )。

  A.友元函数提供了类之间数据共享的一个途径

  B.一个友元函数可以拜候任何类的任何成员

  C.友元函数破坏了数据的封装

  D.友元函数增加了程序设计的灵活性

  准确答案:B

  答案解析:友元函数的作用在于提高程序的运行效率,但是它破坏了类的封装性和隐藏性,使得非成员函数可以拜候类的私有成员。只有在类中声明了某个函数是自己的友元函数之后,该友元函数才气够拜候本类的私有成员,而不是任何类的任何成员都可以拜候。

  9). 派生类对象对其基类中的什么成员是可拜候的?( )

  A.公有继续的私有成员

  B.私有继续的公有成员

  C.私有继续的掩护成员

  D.掩护继续的掩护成员

  准确答案:B

  答案解析:本题考查伟德国际C++语言继续问题中派生类对基类的拜候。C++语言中通常有三种继续修饰符,即public、protected、prlvate,限制依次严格,另外对类中的数据和函数也由这三种修饰符进行限制,有三种成员是不能继续的:公有继续基类的私有成员,私有继续基类的私有成员,掩护继续基类的私有成员。

  10). 已知char a;int b;float c;double d;则表达式a* b+c-d的结果为( )。

  A.double

  B.int

  C.float

  D.char

  准确答案:A

  答案解析:本题考查混合运算表达式类型,由表达式中具有最高优先级的类型所确定,所以答案为A。

  11). 下列伟德国际this指针的叙述中,准确的是( )。

  A.任何与类相关的函数都有this指针

  B.类的成员函数都有this指针

  C.类的友元函数都有this指针

  D.类的非静态成员函数才有this指针

  准确答案:D

  答案解析:本题考查this指针的使用。类的每一个成员函数都有一个隐含的常量指针,即this指针。类的静态成员函数不能含有this指针,因为this指针是一个指向本对象的指针。