C++练习试卷1及参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++练习试卷1及参考答案
一、填空题(每小题2分,共16分)
1.任何一个对象都应当具有这两个要素,即①和②,它能根据外
界给的信息进行相应的操作。
2. 封装可以使得程序中各部分之间的相互影响达到最小,并且提高程序的①
性。
3.继承可以让程序员①父类的代码,专注于子类编写新代码。
4.①型成员和②型成员具有被继承性,而③型成员不具有被继承性。
5.一旦一个函数在基类中被定义为虚函数,那么它在派生类中就被认为是虚函数,不需再在派生类中用①关键说明。
6.纯虚函数的声明形式是在虚函数声明形式后跟①。
7.函数与模板函数同名时,哪一个优先被调用?①。
8.异常使用三部曲:框定异常(①语名块)、定义异常处理(②语句块)、抛掷异常(③语句)。
二、单项选择题(每小题2分,共20分)
1、在int a=3,*p=&a;中,*p的值是()。
A. 变量a的地址值
B. 无意义
C. 变量p的地址值
D. 3
2、以下4个选项中,不能看作一条语句的是()。
A. if(b==0) m=1;n=2;
B. a=0,b=0,c=0;
C. if(a>0);
D. {;}
3、()不是构造函数的特征。
A. 构造函数的函数名与类名相同
B. 构造函数可以重载
C. 构造函数可以设置缺省参数
D. 构造函数必须指定类型说明
4、关于成员函数特征的下列描述中,()是错误的。
A. 成员函数一定是内联函数
B. 成员函数可以重载
C. 成员函数可以设置缺省参数值
D. 成员函数可以是静态的
5、有以下程序
#include
void main( )
{ int i,s=0;
for(i=1;i<10;i+=2) s+=i;
cout<
程序执行后的输出结果是()。
A. 自然数1~9的累加和
B. 自然数1~10的累加和
C. 自然数1~9中的奇数之和
D. 自然数1~10中的偶数之和
6、编译时多态性通过使用()获得。
A.构造函数
B.虚函数
C.重载函数
D.析构函数
7、有以下程序
#include
void main( )
{ char *p[10]={"abc","aabdfg","dcdbe","abbd","cd"};
cout<
}
执行后输出结果是
A. dcdbe
B. abbd
C. abc
D. abb
8、下列静态数据成员的特性中,()是错误的。
A. 说明静态数据成员时前边要加修饰符static
B. 静态数据成员要在类体外进行初始化
C. 静态数据成员不是所有对象所共用的
D. 引用静态数据成员时,要在其名称前加<类名>和作用域运算符
9、有以下语句
struct S
{ int g;
char h;} T;
则下面叙述中不正确的是()。
A. S是结构体名
B. 该结构体包含2个成员
C. S是struct类型的变量
D. T是struct S类型的变量
10、实现运行时的多态性用()。
A. 重载函数
B.构造函数
C.析构函数
D.虚函数
三、简述题(9分)
简述面向对象程序设计的基本思想、方法和步骤。
四、阅读程序,写出运行结果(每小题7分,共35分)1.(7分)
#include
void main()
{
int x=10;
int &y=x;
cout<<"x="< cout<<"x="< y++; cout<<"x="< } 2.(7分)======================================================== #include class point {private: int x,y; public: point( ){cout<<”构造函数1被调用!\n” ;} point(int xx,int yy) { x=xx;y=yy; cout<<”构造函数2被调用”< int GetX(){return x;} int GetY(){return y;}}; point::point(point &p) { x=p.x; y=p.y; cout<<”拷贝构造函数被调用”< } void main() {point A(4,5),B; point C(A); cout< } 3.(7分)============================================================ #include