第一周 从 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+40‍‍cout<<ref<<endl;‍‍输出ref的值是:‍
答案: 【 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);

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

发表评论

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