程序设计与算法(三)C++面向对象程序设计(北大)
解忧书店 JieYouBookshop
第一周测验
1
单选(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;
正确答案:D你没选择任何选项
2
单选(1分)
下面程序片段输出结果是什么?
    int a = 1,b = 2;
    int & r = a;
    r = b;
    r = 7;
    cout << a << endl;
A.1
B.2
C.7
D.8
正确答案:C你没选择任何选项
3
单选(1分)
下面说法哪种是对的?
A.常引用所引用的变量,其值不能被修改
B.不能通过常量指针,去修改其指向的变量
C.常量指针一旦指向某个变量,就不能再指向其他变量
D.1+1 = 3
正确答案:B你没选择任何选项
4
单选(1分)
表达式 “new int”的返回值类型是:
A.int
B.int *
C.int &
D.void
正确答案:B你没选择任何选项
5
单选(1分)
下面小段程序,哪个是正确的:
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]; 
正确答案:A你没选择任何选项
6
单选(1分)
下面说法正确的是:
A.多个重载函数的参数个数必须不同。
B.两个函数,参数表相同,返回值类型不同,它们是重载关系。
C.调用一个第二个和第三个参数都有有缺省值的函数时,可以不写第二个实参而写第三个实参。
D.使用内联函数的目的是提高程序的运行速度。
正确答案:D你选对了
7
填空(2分)
简单的swap 通过码是    ( 请参考公告中的“关于编程作业的说明”完成编程作业(请注意,编程题都要求提交通过码,在openjudge上提交了程序并且通过以后,就可以下载到通过码。)
正确答案:5d8eb03ffe6fd88e217056b74768a4509bf257207c58c7ebad211cbb8a074e48
8
填空(2分)
难一点的swap的通过码是
正确答案:7ffc014c87641aa1e7cca0338c15f3166fc444167ebc65a1cfc537155fba9e62
9
樊野离婚填空(2分)
好怪异的返回值 通过码是
正确答案:921601e52aaa380bb53ede2bce0bc766054c14d37ce9868fda5d5a33ef179fe2
10
填空(2分)
神秘的数组初始化 通过码是
正确答案:b351d67e786910180803e6082624997058b7f8daed63728898b769ba3782e10e
第二周测验
1
单选(1分)
有类A如下定义:
class A {
    int v;
    public:
    A ( int n) { v = n; }
};
下面哪条语句是编译不会出错的?
A.C)  A * p = new A();
B.B)  A a2;
C.A)  A a = new A();
D.D)  A a1(3);
正确答案:D你没选择任何选项
2
单选(1分)
假设 A 是一个类的名字,下面的语句生成了几个类A的对象?
A * arr[4] = { new A(), NULL,new A() };
A.邮费D) 4
B.A) 1
C.B) 2
D.C) 3
正确答案:C你没选择任何选项
3
单选(1分)
假设A 是一个类的名字,下面哪段程序不会用到A的复制构造函数?
A.A) A a1,a2; a1 = a2;
B.D) A a1; A a2(a1);
新高考要复读必须两年C.B) void func( A a) { cout << "good" << endl; }
D.C) A func( ) { A tmp; return tmp; }
正确答案:A你没选择任何选项
4
单选(1分)
类A定义如下:
class A {
    int v;
    public:
        A(int i) { v = i; }
        A() { }
};
下面哪段程序不会引发类型转换构造函数被调用?
华为双系统怎么切换
A.B) A a2 = 4;   
B.C) A a3; a3 = 9;
C.A) A a1(4)