(单选题)1: 下列描述正确的是()。
A: 表示m>n为true或mn&&m
B: switch语句结构中必须有default语句
C: if语句结构中必须有else语句
D: 如果至少有一个操作数为true,则包含“‖”运算符的表达式为true
(单选题)2: 已知字符'b'的ASCII码为98,语句printf("%d,%c",'b','b'+1 );的输出为( )
A: 98,b
B: 语句不合法
C: 98,99
D: 98,c
(单选题)3: 在设计程序时,应采纳的原则之一是()。
A: 不限制goto语句的使用
B: 减少或取消注解行
C: 程序越短越好
D: 程字结构应有助于读者理解
(单选题)4: 已知下列语句中的x和y都是int型变量,其中不正确的语句是( )
A: y+=++x;
B: ++x+=y;
C: y=x++;
D: x++=y;
(单选题)5: 下列关于构造函数说法不正确的是( )
A: 构造函数必须与类同名
B: 在构造函数中可以对类中的成员进行初始化
C: 构造函数可以省略不写
D: 构造函数必须有返回值
(单选题)6: 假定AB为一个类,则执行“ABa(4),b[3],*p[2];”语句时,自动调用该类构造函数的次数为()。
A: 3
B: 4
C: 6
D: 9
(单选题)7: 下列各个成员函数中,纯虚函数是( )
A: void fun(int)=0
B: virtual void fun(int)
C: virtual void fun(int){ }
D: virtual void fun(int)=0
(单选题)8: 下面关于数组的描述错误的是()。
A: 在C++语言中数组的名字就是指向该数组第一个元素的指针
B: 长度为n的数组,下标的范围是0-n-1
C: 数组的大小必须在编译时确定
D: 数组只能通过值参数和引用参数两种方式传递给函数
(单选题)9: 下列程序的执行结果为_________。#include void main() { int a=3,b=0; int*p=&a: b=+a++; cout<<*P<<","<b<<endl;}
A: 3,4
B: 4,3
C: 3,4
D: 4,4
(单选题)10: 在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是()。
A: 派生类的对象可以赋给基类的对象
B: 派生类的对象可以初始化基类的引用
C: 派生类的对象可以直接访问基类中的成员
D: 派生类的对象的地址可以赋给指向基类的指针
(单选题)11: 结构化程序设计的一种基本方法是()。
A: 筛选法
B: 递归法
C: 归纳法
D: 逐步求精法
(单选题)12: 下列程序的输出结果是_________。 #include <iostream> int min(int a,int B) { if(a<b) return a; else return B; return 0; } void main() { cout<<min(1,min(2,3))<<endl; }
A: 0
B: 1
C: 2
D: 3
(单选题)13: 假定a为一个整型数组名,则元素a[4]的字节地址为()。
A: a+4
B: a+8
C: a+16
D: a+32
(单选题)14: 在对typedef的叙述中错误的是()。
A: 用typedef可以定义各种类型名,但不能用来定义变量
B: 用typedef可以增加新类型
C: 用typedef只是将已存在的类型用一个新的标识符来代表
D: 使用typedef有利于程序的通用和移植
(单选题)15: 下列程序执行完后,x的值是()。
intx=0;
for(intk=0;k下列程序段循环次数是()。intx=-10; while(++x) cout<<x<<endl;
A: 9
B: 10
C: 11
D: 无限
(判断题)21: 在基类中被说明为虚函数的类的成员函数必须在每个派生类中说明为虚函数,才能具有多态的特征。
A: 错误
B: 正确
(判断题)22: 假定一个一维数组的定义为“char*a[8];”,则该数组所含元素的个数为32。
A: 错误
B: 正确
(判断题)23: 一个类的对象只有一个。
A: 错误
B: 正确
(判断题)24: 内联函数是为了提高编程效率而实现的,它克服了用#define宏定义所带来的弊病 。( )
A: 错误
B: 正确
(判断题)25: 如果类B继承了类A,则称类A为类B的基类,类B称为类A的派生类。
A: 错误
B: 正确
(判断题)26: 说明函数原型时不需要指明每个函数参数的名字,只需要说明每个参数的类型和返回值类型就可以了。
A: 错误
B: 正确
(判断题)27: 派生类的成员一般分为两部分,一部分是从基类继承的成员,另一部分是自己定义的新成员。
A: 错误
B: 正确
(判断题)28: 系统可以提供默认的析构函数。
A: 错误
B: 正确
(判断题)29: 构造函数不能重载。
A: 错误
B: 正确
(判断题)30: 一个对象必属于某个类。
A: 错误
B: 正确
(判断题)31: switch后面括号中的表达式只能是整型、字符型或枚举型表达式。( )
A: 错误
B: 正确
(判断题)32: 用一个标识符代表一个常量的称为符号常量,符号常量不同于变量,它的值在其作用域内不能改变,也不能再被赋值。( )
A: 错误
B: 正确
(判断题)33: 引用的目的主要用于在函数参数传递中,解决大对象的传递效率和空间都不如意的问题。( )
A: 错误
B: 正确
(判断题)34: 私有成员只能被本类的成员函数访问,来自类外部的任何访问都是非法的。( )
A: 错误
B: 正确
(判断题)35: 设一维整型数组data已进行了初始化,则其元素个数可由操作符sizeof通过表达式sizeof(data/data[0])计算出来。
A: 错误
B: 正确
(判断题)36: 带extern的变量说明是变量声明,不是变量定义。( )
A: 错误
B: 正确
(判断题)37: 如果派生类的成员函数的原型与基类中被定义为虚函数的成员函数原型相同,那么,这个函数自动继承基类中虚函数的特性。
A: 错误
B: 正确
(判断题)38: 在内存中,字符数据以ASCII码存储,即以整数表示。( )
A: 错误
B: 正确
(判断题)39: 在面向对象的程序设计中,类描述的是具有相似性质的一组对象。
A: 错误
B: 正确
(判断题)40: 一个类的成员函数可以任意被调用( )
A: 错误
B: 正确
(多选题)41: 对C++语言和C语言的兼容性,描述不正确的是______。
A: C++兼容C
B: C++部分兼容C
C: C++不兼容C
D: C兼容C++
(多选题)42: 在进行完成任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中不能用于检测输入流状态的操作函数名称是______。
A: fail
B: eof
C: bad
D: good
(多选题)43: 函数调用可以______。
A: 出现在一个表达式中
B: 出现在执行语句中
C: 作为一个函数的实参
D: 作为一个函数的形参
(多选题)44: 考虑函数原型void test(int a ,int b=7,char z=’*’),下面的函数调用中,属于合法调用的是______。
A: test(5)
B: test(5,8)
C: test(6,’#’)
D: test(0,0,’*’)
(多选题)45: 在下面的一维数组定义中,没有语法错误的是______。
A: int a[ ]={1,2,3}
B: int a[10]={0}
C: int a[ ]
D: int a[5]
(多选题)46: 下面关于指针变量和引用变量的说法正确的是______。
A: 指针变量存放的是内存地址,并且可以置为0
B: 定义引用变量时,必须同时指明具体被引用的对象或变量
C: 使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址
D: 类中的数据成员可以是指针变量,但不能是引用变量
(多选题)47: 下列哪种函数不可以是虚的______。
A: 自定义的构造函数
B: 拷贝构造函数
C: 静态成员函数
D: 析构函数
(多选题)48: 下面描述中,表达正确的是______。
A: 公有继承时基类中的public成员在派生类中仍是public的
B: 公有继承时基类中的private成员在派生类中是public的
C: 公有继承时基类中的protected成员在派生类中仍是protected的
D: 私有继承时基类中的public成员在派生类中是private的
(多选题)49: 下面哪些保留字可以作为函数的返回类型______。
A: void
B: int
C: new
D: long
(多选题)50: 使用值传递方式将实参传给形参,下列说法不正确的是______。
A: 形参是实参的备份
B: 实参是形参的备份
C: 形参和实参是同一对象
D: 形参和实参无联系
(责任编辑:admin)要这答案加QQ:800020900 或加微信:vq800020900 获取