精品文档
C++期末考试复习题
一、选择题
1. 在声明类时,下面的说法正确的是( C )。
A.可以在类的声明中给数据成员赋初值 B.数据成员的数据类型可以是register C.private、public、protected可以按任意顺序出现
D.没有用 private、public、protected定义的数据成员是公有成员 2. 在一个类的定义中,包含有( C )成员的定义。 A. 数据 B. 函数 C. 数据和函数 D. 数据或函数
3. 假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为( A )。
A. int AA::a() B. int AA:a() C. AA::a() D. AA::int a()
4. 假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访问px所指对象中数据成员a的格式为( C )。 A. px(a) B. px[a] C. px->a D. px.a 5. 下列关于运算符new的描述中,错误的是( D )。 A.它可以创建对象或变量
B.它可以创建对象数组或一般类型数组
C.用它创建对象或对象数组时要调用相应的构造函数 D.用它创建的对象可以不用delete运算符释放
6. 在下面有关析构函数特征的描述中,正确的是( A )。
A.一个类中可以定义多个析构函数 B.析构函数名与类名完全相同 C.析构函数不能指定返回类型 7. 构造函数是在( B )时被执行的。
A.程序编译 B. 创建对象 C. 创建类 D. 程序装入内存 8. 友元的作用之一是( A )。 精品文档
D.析构函数可以由一个或多个参数
精品文档
A.提高程序的运行效率 B.加强类的封装性 C.实现数据的隐藏性
D.增加成员函数的种类
9. 设置虚基类的目的是( B )。
A.简化程序 B.消除二义性 C. 提高运行效率 10. 回值的纯虚函数,正确的写法是( B )。
A.virtual show()=0; B.virtual void show(); C.virtual void show()=0; D. void show()=0 virtual; 11. 重载函数在调用时选择的依据中,( B )是错误的。
A. 函数名字 B.函数的返回类型
C.参数个数 D.参数的类型
D.减少目标代码
12. 已知:int fun (int &a),m=10;下列调用fum()函数的语句中,正确的是( C )。
A.fun(&m);
B.fun (m*2);
C.fun (m);
D.fun (m++);
13. 下列各种类中,不能定义对象的类是( B )。
A.派生类
B.抽象类 C.嵌套类
D.虚基类
14. 类中定义的成员默认为( A )访问属性。
A. public B. private C. protected D. friend 15. 静态成员函数对类的数据成员访问( B )。
A. 是不允许的 B. 只允许是静态数据成员
C. 只允许是非静态数据成员 D. 可允许是静态数据成员或非静态数据成员 16. 在下列语句中,将函数int f_sum(int x,int y)正确重载的是( A )。 A.float f_sum(int x,int y) B.int f_sum(int a,int b) C.int f_sum(int x) D.float f_sum(int a,int b) 17. 下列各语句是输出字符'A'的,其中错误语句是( B )。
A.cout<<'A';
B.cout.put('A'); C.char ch='A';cout< 精品文档 精品文档 18. 当将一个类A或函数f()说明为另一个类B的友元后,类A或函数f()能够直接访问类B的( D )。 A. 只能是公有成员 B. 只能是保护成员 C. 只能是除私有成员之外的任何成员 D. 具有任何权限的成员 19. C++语言程序中进行文件操作时应包含的头文件是( A )。 A.fstream.h B.math.h C.stdlib.h D.strstrea.h 20. 在C++程序中使用的cin标识符是系统类库中定义的( A )类中的一个对象。 A. istream B. ostream C. iostream D. fstream 21. 已知:char n=’p’;在下列表示引用的方法中,( )是正确的。 A.char &x=n; B. char &y=’p’; C. char &z; D.float &t=&n; 22. 在( A )情况下适宜采用内联函数。 A.函数代码小,频繁调用 B. 函数代码多,频繁调用 C.函数体含有递归语句 D. 函数体含有循环语句 23. 如果表达式a+b中的“+”是作为友元函数重载的运算符,若采用运算符函数调用格式, 则可表示为( )。 A. a.operator+(b) B. b.operator+(a) C. operator+(a,b) D. operator(a+b) 24. 执行完循环 for(i=1;i<100;i++);后,i 的值为 ( B )。 A. 99 B. 100 C. 101 D. 102 25. 假定一个类对象数组为A[n],当离开它定义的作用域时,系统自动调用该类析构函数的次数为( C )。 A. 0 B. 1 C. n D. n-1 26. 在C++程序中使用的cout标识符是系统类库中定义的( B )类中的一个对象。 A. istream B. ostream C. iostream D. fstream 二、填空题 1. 在下面一段类定义中, Derived类是由直接基类Base 1和Base 2所派生的,Derived精品文档
C++期末考试复习题教学文稿
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)