2020 面向对象程序设计(崔树芹)(武汉纺织大学) 最新满分章节测试答案
本答案对应课程为:点我自动跳转查看
本课程起止时间为:2020-02-17到2020-07-30
本篇答案更新状态:已完结
第一周 从 C 到C++ 第一周 测验
1、 问题:下面程序片段哪个没错?
选项:
A: int n = 4; int & r = n * 5;
B: int n = 6; const int & r = n; r = 7;
C: int n = 8; const int & r1 = n; int & r2 = r1;
D: int n = 8; int & r1 = n; const int r2 = r1;
答案: 【 int n = 8; int & r1 = n; const int r2 = r1;】
2、 问题:下面程序片段输出结果是什么? int a = 1,b = 2; int & r = a; r = b; r = 7; cout << a << endl;
选项:
A:1
B:2
C:7
D:8
答案: 【7】
3、 问题:下面说法哪种是对的?
选项:
A:常引用所引用的变量,其值不能被修改
B:不能通过常量指针,去修改其指向的变量
C:常量指针一旦指向某个变量,就不能再指向其他变量
D:1+1 = 3
答案: 【不能通过常量指针,去修改其指向的变量】
4、 问题:表达式 “new int”的返回值类型是:
选项:
A:int
B:int
C:int &
D:void
答案: 【int 】
5、 问题:下面小段程序,哪个是正确的:
选项:
A: char * p = new char[10]; p[0] = ‘K’; delete [] p;
B: int *p = new int[25]; p[10] = 100; delete p
C: char * p = new int; p = ‘a’; delete p;
D:int * p = new char[20];
答案: 【 char * p = new char[10]; p[0] = ‘K’; delete [] p;】
6、 问题:下面说法正确的是:
选项:
A:多个重载函数的参数个数必须不同。
B:两个函数,参数表相同,返回值类型不同,它们是重载关系。
C:调用一个第二个和第三个参数都有有缺省值的函数时,可以不写第二个实参而写第三个实参。
D:使用内联函数的目的是提高程序的运行速度。
答案: 【使用内联函数的目的是提高程序的运行速度。】
7、 问题:简单的swap ,补充代码是
答案: 【A&a,A&b】
8、 问题:难一点的swap,补充代码是
答案: 【int&a,int&b】
9、 问题:好怪异的返回值 补充代码是
答案: 【int&】
10、 问题:int num=50;int ref&=num;ref=ref+10;num=num+40cout<100】
第二周 类和对象基础 第二周测验
1、 问题:有类A如下定义:class A { int v; public: A ( int n) { v = n; }};下面哪条语句是编译不会出错的?
选项:
A:A) A a = new A();
B:B) A a2;
C:C) A * p = new A();
D:D) A a1(3);
答案: 【D) A a1(3);】
2、 问题:假设 A 是一个类的名字,下面的语句生成了几个类A的对象?A * arr[4] = { new A(), NULL,new A() };
选项:
A:A) 1
B:B) 2
C:C) 3
D:D) 4
答案: 【B) 2】
3、 问题:假设A 是一个类的名字,下面哪段程序不会用到A的复制构造函数?
选项:
A:A) A a1,a2; a1 = a2;
B:B) void func( A a) { cout << “good” << endl; }
C:C) A func( ) { A tmp; return tmp; }
D:D) A a1; A a2(a1);
答案: 【A) A a1,a2; a1 = a2;】
4、 问题:类A定义如下:class A { int v; public: A(int i) { v = i; } A() { }};下面哪段程序不会引发类型转换构造函数被调用?
选项:
A:A) A a1(4)
B:B) A a2 = 4;
C:C) A a3; a3 = 9;
D:D) A a1,a2; a1 = a2;
答案: 【D) A a1,a2; a1 = a2;】
5、 问题:假设A是一个类的名字,下面的程序片段会调用类A的调用析构函数几次? int main() { A * p = new A[2]; A * p2 = new A; A a; delete [] p;}
选项:
A:A) 1
B:B) 2
C:C) 3
D:D) 4
答案: 【C) 3】
第三周 类和对象提高 第三周测验
1、 问题:1) 以下说法不正确的是:
选项:
A:静态成员函数中不能使用this指针
B:this指针就是指向成员函数所作用的对象的指针
C:每个对象的空间中都存放着一个this指针
D: 类的非静态成员函数,真实的参数比所写的参数多1
答案: 【每个对象的空间中都存放着一个this指针】
2、 问题:2) 下面说法哪个不正确?
选项:
A:静态成员函数内部不能访问同类的非静态成员变量,也不能调用同类的非静态成员函数
B:非静态成员函数不能访问静态成员变量
C: 静态成员变量被所有对象所共享
D:在没有任何对象存在的情况下,也可以访问类的静态成员
答案: 【非静态成员函数不能访问静态成员变量】
3、 问题:3) 以下说法正确的是:
选项:
A:成员对象都是用无参构造函数初始化的
B:封闭类中成员对象的构造函数先于封闭类的构造函数被调用
C:封闭类中成员对象的析构函数先于封闭类的析构函数被调用
D:若封闭类有多个成员对象,则它们的初始化顺序取决于封闭类构造函数中的成员初始化列表
答案: 【封闭类中成员对象的构造函数先于封闭类的构造函数被调用】
4、 问题:4) 以下关于友元的说法哪个是不正确的?
选项:
A:一个类的友元函数中可以访问该类对象的私有成员
B:友元类关系是相互的,即若类A是类B的友元,则类B也是类A的友元
C:在一个类中可以将另一个类的成员函数声明为友元
D:类之间的友元关系不能传递
答案: 【友元类关系是相互的,即若类A是类B的友元,则类B也是类A的友元】
5、 问题:假定C为一个类,则下面为该类的拷贝构造函数的原型说明是:
选项:
A:C(C x);
B:C(C& x);
C:void C(C x)
D:void C(C &x)
答案: 【C(C& x);】
6、 问题:假设A是一个类,则语句A a[2],*p[3];调用构造函数的次数为:
选项:
A:0
B:2
C:3
D:5
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦