C++面向对象-试卷A卷

C++面向对象-试卷A卷

ID:37927141

大小:57.00 KB

页数:8页

时间:2019-06-02

上传者:U-2437
C++面向对象-试卷A卷_第1页
C++面向对象-试卷A卷_第2页
C++面向对象-试卷A卷_第3页
C++面向对象-试卷A卷_第4页
C++面向对象-试卷A卷_第5页
资源描述:

《C++面向对象-试卷A卷》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

山东财政学院2009—2010学年第二学期期末考试《C++面向对象程序设计》试卷(A)(考试时间为120分钟)学院__________班级__________姓名学号__________题号一二三四五六七总分得分阅卷人合分人(答案一律答在答题纸上,答在试卷上无效)一、单项选择题(每小题2分,共20分)1、C++中解决命名冲突的机制是:()(A)虚基类(B)虚函数(C)函数重载(D)命名空间2、在一个类中,下列哪些成员可以是多个?()(A)无参构造函数(B)析构函数(C)原型相同的非静态成员函数(D)静态成员函数3、若类A的一个对象所占的内存空间中包含虚函数表的入口地址,则:()(A)类A不能有静态数据成员(B)类A中公有的成员函数一定是虚的(C)类A中至少有一个成员函数是虚的(D)类A的析构函数一定是虚的4、下列选项中不是构造函数特征的是:()(A)构造函数的函数名与类名相同(B)构造函数可以重载(C)构造函数可以设置缺省参数(D)构造函数必须指定类型说明5、在类定义中,为说明成员的访问权限,private、protected、public可以出现次数为:()(A)次数没有具体限定(B)每种至多一次(C)public至少一次(D)每种至少一次6、下面关于访问类A的私有数据成员的说法,错误的是:()(A)类A的友元函数可以访问类A的私有成员。(B)类A的友元类中的非静态成员函数可以访问类A的私有成员。(C)类A的嵌套类中的非静态成员函数可以访问类A的私有成员。(D)类A中的非静态成员函数可以访问类A的私有成员。7、下面关于类的成员函数描述不正确的是:()(A)静态成员函数内可以直接访问类的非静态成员数据第8页共8页 (B)静态成员函数内可以直接访问类的静态成员数据(C)非静态成员函数可以直接访问类的非静态成员数据(D)非静态成员函数可以直接访问类的静态成员数据8、已知类A中的一个成员函数说明如下:voidset(A&a);其中A&a的含义是:()(A)将a的地址值赋给变量set(B)a是类A对象的引用,用来作函数set()的参数(C)变量A与a按位与作为函数set的参数(D)指向类A的指针为a9、下列各种函数中,()不是类的成员函数。(A)构造函数(B)析构函数(C)友元函数(D)拷贝构造函数10、下列哪种运算符可以被重载?()(A)sizeof(B)::(C)?:(D)[]二、填空题(每空1.5分,共15分)1、要在屏幕上显示Hello,world!应执行语句cout<<____________。2、在C++中,函数的参数有两种传递方式,它们是值传递和____________。3、面向对象的程序设计有四大特征,它们是抽象、封装、____________和____________。4、在C++中,定义重载函数时,应至少使重载函数的参数个数或参数类型____________;在基类和派生类中,成员函数的覆盖是指____________。5、C++程序的编写和实现的5个步骤:用C++语言编写源程序、____________、____________、运行程序、分析运行结果。6、从系统实现的角度看,多态性分为两类:____________、____________。三、判断题(每小题1分,共10分)1、重载流操作符<<和>>时,如果第一个参数的类型为ostream和istream,那么这个重载函数既可以用于标准输入输出流,也可以用于文件流上。()2、在同一个类中,可以定义重载的成员函数voidf(int);和virtualvoidf(int);()3、抽象类不会产生实例,所以不需要有构造函数。()4、类A有一个非静态的成员函数f,其函数原型是:voidA::f()const,则该函数被调用时,一定是通过类A或类A的某后裔类的一个用const修饰符说明的常量对象调用的。()5、在protected继承方式下,派生类对象的指针不能直接转换成指向基类对象的指针。()第8页共8页 6、在public继承方式下,基类中被说明为protected和private的成员只能被其派生类的成员函数访问不能被其他的函数访问。()7、最先被调用的构造函数,其对应的(同一对象中的)析构函数最后被调用,而最后被调用的构造函数,其对应的析构函数最先被调用。()8、指向常量的指针允许通过此指针修改其所指对象的值。()9、C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载。()10、对于公用继承基类的公用成员和保护成员在派生类中保持原有访问属性,其私有成员仍为基类私有。()四、读程序写结果(每小题5分,共15分)1、#includeusingnamespacestd;intmain(){inta,b,c;a=10;b=23;c=a+b;cout<<"a+b=";cout<usingnamespacestd;classDate{public:Date(int,int,int);Date(int,int);Date(int);Date();voiddisplay();第8页共8页 private:intmonth;intday;intyear;};Date::Date(intm,intd,inty):month(m),day(d),year(y){}Date::Date(intm,intd):month(m),day(d){year=2010;}Date::Date(intm):month(m){day=1;year=2010;}Date::Date(){month=1;day=1;year=2010;}voidDate::display(){cout<usingnamespacestd;classStudent第8页共8页 {public:voidget_value(){cin>>num>>name>>sex;}voiddisplay(){cout<<"num:"<>age>>addr;}voiddisplay_1(){display();cout<<"age:"<usingnamespacestd;voidmain(){floata,b;________________;//函数cha的原型声明a=12.5;b=6.5;floatc=____________;//调用函数chacout<usingnamespacestd;classComplex{public:Complex(){real=0;imag=0;}Complex(doubler,doublei){real=r,imag=i;}第8页共8页 Complexoperator+(Complex&c2);//声明重装运算符+的函数voiddisplay();//声明输出复数的函数private:doublereal;doubleimag;};______________________________//定义重载运算符+的函数{Complexc;________________________________________________returnc;}voidComplex::display(){_________________________________________}//定义输出复数的函数,输出形式为(实部,虚部i)。例如:(3,4i)intmain(){Complexc1(3,4),c2(5,-10),c3;c3=c1+c2;//运算符+用于复数运算cout<<"c1=";c1.display();cout<<"c2=";c2.display();cout<<"c1+c2=";c3.display();return0;}七、程序设计(第1题8分,第2题12分,共20分)1、输入两个整数,将他们按由大到小的顺序输出。要求使用变量的引用。2、需要求3个长方柱的体积,请编写一个面向对象的程序。数据成员包括length(长)、width(宽)、height(高)。要求用成员函数实现以下功能:(1)由键盘分别输入3个长方柱的长、宽、高;(2)计算长方柱的体积;(3)输出3个长方柱的体积。第8页共8页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭