15春天津大学《面向对象程序设计》在线作业试卷试卷
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
15春天津大学《面向对象程序设计》在线作业
一、单选题(共20 道试题,共100 分。)
1. 以下函数原型说明中,不正确的是()。
A. int Function();
B. void Function(int);
C. int Function(a);
D. void int(double a);
正确答案:B
2. 在公有派生中,如果基类和派生类有原型完全相同的成员函数,且都为public权限,若通过派生类的对象调用该成员函数,则()。
A. 系统将先调用基类的同名函数,再调用派生类的同名函数。
B. 系统将先调用派生类的同名函数,再调用基类的同名函数。
C. 系统直接调用基类的同名函数,不调用派生类的同名函数。
D. 系统直接调用派生类的同名函数。
正确答案:D
3. 静态成员函数一定没有()。
A. 返回类型
B. 返回值
C. this指针
D. 局部变量
正确答案:C
4. 设int a,*p=&a; double b,*q; 则以下语句中正确的是()。
A. p=&b;
B. q=p;
C. p=NULL
D. q=new int;
正确答案:C
5. 在函数定义时,若没有明确指定返回值类型时,函数的缺省类型是()。
A. int
B. void
C. char
D. 没有类型
正确答案:A
6. 完成编译预处理工作的阶段是()。
A. .编译前
B. .编译时
C. .编译后
D. .连接时
正确答案:
7. 以下的函数或运算符不能重载的是()。
A. 类的成员函数
B. 类的构造函数
C. 类的析构函数
D. &运算符
正确答案:
8. 在声明类时,关键字private、public和protected出现()。
A. 至少一次
B. 至多一次
C. public至少一次
D. 0或多次
正确答案:
9. 以下关键字不能用来声明类成员的访问权限的是()。
A. public
B. private
C. protected
D. static
正确答案:
10. 在对象生存期结束时由系统自动调用的函数是()。
A. 构造函数
B. 友元函数
C. 析构函数
D. 虚函数
正确答案:
11. 若有定义int i=2,j=3,a[3][4]={1,2,3,4,5,6,7,8,10,11,12};则对元素a[j]值的正确引用是()。
A. (a+i)+j
B. *(*(a+i)+j)
C. *a+j
D. *(a+i)+j
正确答案:
12. 已知类A是类B的友元,类B是类C的友元,则()。
A. .类A是类C的友元
B. .类C是类A的友元
C. .类A的成员函数可以访问类B对象的任何成员
D. .类C的成员函数可以访问类B对象的任何成员
正确答案:
13. 以下字符串赋值中不正确的是()。
A. char str[ ]=”abcdefg”;
B. char str[80]; str=”abcdefg”;
C. char *pstr=”abcdefg”
D. char *pstr=NULL; pstr=”abcdefg”;
正确答案:
14. 程序控制语句主要包括选择、循环和()。
A. 宏定义
B. 注释
C. 跳转
D. 条件编译
正确答案:
15. 设有说明语句:int x=1,y=3,z=5;则下面表达式中值为0的是()。
B. (y!=1)&&(z!=0)
C. (x D. x||y>3&&z>5 正确答案: 16. 在派生类的成员函数中能够直接访问基类的()。 A. 公有成员和私有成员 B. 保护成员和私有成员 C. .公有成员和保护成员 D. 仅能是公有成员 正确答案: 17. 下列运算符中优先级别最高的是()。 A. ++ B. ?: C. != 正确答案: 18. 如果某类是另一个类的派生类,该类对象释放时析构函数的调用顺序是()。 A. 不调用基类的析构函数 B. 先调用基类的析构函数,再调用派生类的析构函数 C. 先调用派生类的析构函数,再调用基类的析构函数 D. 不调用派生类的析构函数 正确答案: 19. 当A类的某个成员函数被说明为virtual时,该函数在A类的所有派生类中()。 A. 都是虚函数 B. 被重新定义后才是虚函数 C. 只有被用virtual重新说明后才是虚函数 D. 不能被重新定义 正确答案: 20. 设有定义: int i=8,a,b; double x=1.34,y=5.3; 下列表达始中,符合C++语法 的是()。 A. a+=a-=(a=3)*(b=4) B. x%5 C. a=a*3=2 D. y=float(i)++ 正确答案: