第一周 从 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、填空题:
‌001 简单的swap 通过码‎‌( 请参考公告中的“关于编程作业的说明”完成编程作业(请注意,编程题都要求提交通过码,在openjudge上提交了程序并且通过以后,就可以下载到通过码。)‎
答案: 【 47f7952829a41dd50b3d33cd61a6e2864c048e2e269d44c56ec12c5c6494dfa0

8、填空题:
​002 难一点的swap 通过码​​​​​
答案: 【 23c33191ab9eaa08d95980d4425973b9bab59a4f6f9b59ba25862fab0443fa98

9、填空题:
‍003 好怪异的返回值 通过码‏‍‏‍‏
答案: 【 d3b880623c404d195f532f8d378ec4653277f2483bd96445ef26f045b47b563f

10、填空题:
‎004 神秘的数组初始化 通过码​‎​‎​
答案: 【 d55a145230a5ec8679e5034fa035c3cc73dd1c531466429cbaafbad3546cdfba

第二周 类和对象基础

第二周测验

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;
答案: 【

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注