四川大学C++面向对象程序设计模拟试题.docx
- 文档编号:28017729
- 上传时间:2023-07-07
- 格式:DOCX
- 页数:16
- 大小:18.09KB
四川大学C++面向对象程序设计模拟试题.docx
《四川大学C++面向对象程序设计模拟试题.docx》由会员分享,可在线阅读,更多相关《四川大学C++面向对象程序设计模拟试题.docx(16页珍藏版)》请在冰豆网上搜索。
四川大学C++面向对象程序设计模拟试题
C++面向对象程序设计模拟试题一
一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中,只有一个是符合题目要求的,请将其代码填写在题后的括号。
错选、多选或未选均无分。
1.说明虚函数的关键字是(B)。
A)inlineB)virtualC)defineD)static
2.在标准C++中,每个程序中都必须包含有这样一个函数,该函数的函数名为(A)。
A)mainB)MAINC)nameD)function
3.cout是某个类的标准对象的引用,该类是(A)。
A)ostreamB)istreamC)stdoutD)stdin
4.如果在类外的非类的成员函数中有函数调用CPoint:
:
func();则函数func()是类CPoint的(C)。
A)私有静态成员函数B)公有非静态成员函数
C)公有静态成员函数B)友元函数
5.如果class类中的所有成员在定义时都没有使用关键字public、private或protected,则所有成员缺省定义为(C)。
A)publicB)protectedC)privateD)static
6.一个类的所有对象共享的是(D)。
A)私有数据成员B)公有数据成员
C)保护数据成员D)静态数据成员
7.动态联编所支持的多态性称为(D)。
A)虚函数B)继承
C)编译时多态性D)运行时多态性
8.定义类模板时要使用关键字(D)。
A)constB)newC)deleteD)template
9.对虚基类的定义(A)。
A)不需要使用虚函数B)必须使用虚函数
C)必须使用privateD)必须使用public
10.类类型转换函数(A)。
A)不能带有参数B)只能带一个参数
C)只能带2个参数D)只能带3个参数
二、填空题(本大题共5小题,每小题2分,共10分)不写解答过程,将正确的答案写在每小题的空格。
错填或不填均无分。
1.在用C++进行程序设计时,最好用(new)代替malloc。
2.函数模板中紧随template之后尖括号的类型参数都要寇以保留字(class或typename)。
3.编译时多态性可以用(重载)函数实现。
4.拷贝构造函数用它所在类的(对象)作为参数。
5.用关键字static修饰的类的成员称为(静态)成员。
三、程序分析题(本大题共6小题,每小题5分,共30分)给出下面各程序的输出结果。
1.阅读下面程序,写出输出结果。
#include
usingnamespacestd;
classArray
{
public:
Array(inta[],intiSize):
elem(a),size(iSize)
{
}
intGetSize()
{
returnsize;
}
int&operator[](inti)
{
returnelem[i-1];
}
private:
int*elem;
intsize;
};
intmain()
{
ints[]={3,7,2,1,5};
Arrayar(s,5);
ar[1]=9;
for(inti=1;i<=5;i++)
{
cout< } cout< return0; } 上面程序的输出结果为: 97215 2.阅读下面程序,写出输出结果。 #include usingnamespacestd; template voidPrint(Typea[],intn) { for(inti=0;i { cout< } } intmain() { inta[]={5,6,8}; doubleb[]={6.8,9.6}; Print(a,sizeof(a)/sizeof(int)); Print(b,2); cout< return0; } 上面程序的输出结果为: 5686.89.6 3.阅读下面程序,写出输出结果。 #include usingnamespacestd; classTest { public: Test(intn): num(n) { count++; } ~Test() { } voidPrint()const; staticintGetCount() { returncount; } private: intnum; staticintcount; }; intTest: : count=0; voidTest: : Print()const { cout< } intmain() { TestoTest1(6); oTest1.Print(); TestoTest2(8); oTest2.Print(); cout< : GetCount(); cout< return0; } 上面程序的输出结果为: 61822 4.阅读下面程序,写出输出结果。 #include usingnamespacestd; classTest { public: Test(inta=0,intb=0,intc=0): x(a),y(b),z(c){} voidPrint() { cout< cout< } voidPrint()const { cout< } private: intx,y; constintz; }; intmain() { Testobj1; obj1.Print(); Testobj2(1,6,8); obj2.Print(); constTestobj3(6,0,18); obj3.Print(); cout< return0; } 上面程序的输出结果为: 001618 5.阅读下面程序,写出输出结果。 #include usingnamespacestd; classMyClass { private: staticintn; public: MyClass(){n+=1;} ~MyClass(){n-=1;} staticintGetNum(){returnn;} }; intMyClass: : n=0; intmain() { cout< : GetNum()< MyClassobj; cout< : GetNum()< MyClass*p=newMyClass; cout< : GetNum()< deletep; cout< : GetNum()< cout<<"end"< return0; } 上面程序的输出结果为: 0121end 6.阅读下面程序,写出输出结果。 #include usingnamespacestd; classA { private: inta; public: A(){cout<<"无参构造函数"<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 四川大学 C+ 面向 对象 程序设计 模拟 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)