




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
附:练习题一、单项选择题1. 下列标识符中,不合法的用户标识符为(A )、a#b、_int、a_10、PAd2. 每个类(C )构造函数。A、只能有一个B、只可有公有的C、可以有多个D、只可有缺省的3. 在公有继承的情况下,基类成员在派生类中的访问权限(B )A、 受限制B、 保持不变 C、 受保护D、 不受保护4. 在(D )情况下适宜采用inline定义内联函数。A、 函数体含有循环语句 B、 函数体含有递归语句C、 函数代码多、不常调用 D、 函数代码少、频繁调用5. 字符串“3*5=15 ”的长度为( B )。A.6B.7C.8D.96. 字符型数据在内存中的存储形式是( A )。A. ASCII码B.补码C.反码D. 原码7. 假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为( A ) A、AB operator十(AB a) B、AB operator十(AB a,AB b) C、operator十(AB a) D、AB & operator十()8. 在每个C程序中都必须包含有这样一个函数,该函数的函数名为( B ) A、include B、main C、name D、function9. ( B )是析构函数的特征。A析构函数名与类名完全相同 B 一个类中只能定义一个析构函数C析构函数的定义只能在类体内D析构函数可以有一个或多个参数10. 类的拷贝构造函数的参数是( C )。A某个对象名 B某个对象的成员名C某个对象的引用D某个对象的指针名11. 假定QA为一个类,则该类的拷贝构造函数的声明语句为( B )。A. QA&(QA x); B. QA(QA &x); C. QA(QA x) D. QA(QA * x)12. class Base protected: int i; public: int j;;Class Derived:public Base int m; Public: int n;void main() Derived d; d.i = 0; /1 d.j = 0; /2 d.m = 0; /3 d.n = 0; /4其中主函数中有两个赋值语句错误,这两个错误的赋值语句是( B )A、12 B、13 C、23 D、2413. 对于结构体中定义的成员,其隐含访问权限为( A )。 A. public B. protected C. private D.static14. 若x为整型变量,以下定义指针的正确语句是(C)。A)int p=&x;B)int p=x;C)int *p=&x;D)p=x;15. 在函数调用时,如某一默认参数要指明一个特定值,则有( A )。A. 其之后所有参数都必须赋值 B. 其之前所有参数都必须赋值C.其前、后所有参数都必须赋值 D.其前、后所有参数都不必赋值16. 设存在函数int ADD(int,int)返回两参数之和,若求12,67,20三者之和,下列表达式不正确的是( C )。A.int m=ADD(12,ADD(67,20); B.int m=ADD(ADD(12,67),20);C.int m=ADD(12,67,20); D.int m=ADD(67,ADD(12,20);17. 下列静态数据成员的特性中,( C)是错误的。A)说明静态数据成员时前边要加修饰符static; B)静态数据成员要在类体外进行初始化; C)静态数据成员不是所有对象所共用的; D)引用静态数据成员时,要在其名称前加和作用域运算符;18. 友元的作用是( A)。 A)提高程序的运用效率; B)加强类的封装性; C)实现数据的隐藏性; D)增加成员函数的种类;19. 在重载一个运算符为成员函数时,其参数表中没有任何参数,说明该运算符是( B )A)后缀一元运算符B)前缀一元运算符C)无操作数运算符D)二元运算符20. 不同对象调用同名函数,但导致完全不同行为的现象称为( D )。A.抽象B.封装C.继承D.多态性二、填空1. 执行“cout43-18=43-18endl;”语句后得到的输出结果为_43-18=25_。2. 已知AZ的ASCII码为6590,当执行“char ch=14*5+2;coutchy和x=y的逻辑值分别为_0_和_1_。 5. 设px是指向一个类动态对象的指针变量,则执行”delete px;”语句时,将自动调用该类的_析构函数_。6. 若需要把一个函数”void F();”定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句:_friend void F();_ 7. C+语言提供的基本控制结构可以分为3种类型:顺序结构、_选择结构_和循环结构。8. 开发一个C+语言程序的步骤通常包括编辑、_编译_、连接、运行和调试。9. C+类中的_析构_函数在对象的生存期结束时被自动调用。10. 友元函数可以存取类的_私有成员_、公有成员和保护成员。11. 若类的成员函数用关键字static进行修饰,这样的成员函数称为_静态成员函数_。12. 在C+中,创建派生类对象时,总是先从_基类_的初始化开始的。13. 类的继承是指派生类继承基类的数据成员和_函数成员_。14. 在C+中,虽然友元提供了类之间数据进行访问的一种方式,但它破坏了面向对象程序设计的_封装_特性。15. 重载一个函数的条件是:该函数必须在参数的_个数_或参数的类型上与其它同名函数有所不同。16. 重载运算符时,其原有的_运算规则_、结合性以及操作对象的个数不允许改变。17. 类和其它数据类型不同的是,组成这种类型的不仅可以有数据,还可以有对数据进行操作的_函数_。18. 对于类Point而言,其析构函数的定义原型为_Point()_。19. 从一个或多个以前定义的类产生新类的过程称为_派生_。20. C+中用于动态创建对象,并返回该对象的指针的关键字是_new_。21. _#include_指令指示编译器将一个源文件嵌入到带该指令的源文件之中。22. 在保护派生中,基类权限为Private的成员在派生类中_不可直接访问_。三、分析程序题1、给出下面程序的运行输出结果void main()int i,j,k;for(i=0;i=3;i+)for(j=0;j3-i;j+)cout ; for(k=0;k2*i+1;k+) cout*; coutendl;for(i=0;i=2;i+)for(j=0;j=i;j+) cout ;for(k=0;k=4-2*i;k+)cout*; coutendl;2、给出下面程序的运行输出结果#includeusing namespace std;void fun();void main() fun(); fun();void fun() static int a=1; int i=5; a+; i+; couti=i,a=aendl;程序运行结果是_i=6,a=2i=6,a=33、给出下面程序的运行输出结果#include using namespace std;int main() int i,j; for(i=1;i=4;i+) for(j=2;j=4;j+) if(i+j5) cout+ ; else cout*; return 0;结果是:+*+*4、 给出下面程序的运行输出结果#include using namespace std;class A int a;public:A(int aa=0)a=aa;A( )cout Destructor A!aendl;class B:public Aint b;public:B(int aa = 0,int bb = 0):A(aa)b = bb;B( )cout Destructor B! b endl;void main( )B x(5),y(6,7);Destructor B!7Destructor A!6Destructor B!0Destructor A!55、读程序,说明程序功能#include#includebool IsPrime(int m);void main()int x;for (x=3;x=100;x+)if(IsPrime(x)coutxendl;bool IsPrime(int m)int i;for (i=2;isqrt(m) return true;else return false;求3100内的所有素数四、完成程序1下面是选择法排序的程序代码,请补充完整:#includevoid sort(int n, int iArray);void swap(int & a, int & b);void main()int i,n;int iArray10;coutPlease input array number:n;coutPlease input all the integer:endl;for(i=0;iiArrayi; sort(n,iArray);void sort(int n,int iArray)int i,j,p;for(i=0;in-1;i+)_p=i_ ;for(j=i+1;jn;j+)if(_ iArrayjiArrayp ) p=j;if (p!=i) swap(iArrayp, iArrayi);for(i=0;in;i+)coutiArrayiendl; void swap(int &a ,int &b )int xy;xy=a;a=b;b=xy;2.将下面对于Point类的声明和操作代码补充完整#include using namespace std;class Pointpublic:Point(int xx=0, int yy=0)X=xx; Y=yy; countP+ ; Point(Point &p)X=p.X;Y=p.Y;countP+ ;int GetX() return X;int GetY() return Y;static void GetC()cout Object id= countP endl;Point()countP- ;private:int X,Y;static int countP;int Point:countP=0 ;int main()Point:GetC(); Point A(4,5);coutPoint A,A.GetX(),A.GetY();A.GetC();Point B(A);coutPoint B,B.GetX(),GetC();coutGetX()GetY()endl;delete p;Point:GetC();return 0;3下面是输出杨辉三角形的代码,请补充完整#include #include using namespace std;int main() const int n=11; int i,j,ann; for (i=1;in;i+) aii= 1 ; ai1 =1; for (i=3;in;i+) for (j=2;j=i-1;j+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新质生产力加速度
- 2025年流行病学研究专业综合评估答案及解析
- 2025年肿瘤学细胞遗传学知识考核试卷答案及解析
- 2025年中医学中医经典名方辨析试卷答案及解析
- 2025年外科手术创伤处理技术实操评估答案及解析
- 2025年妇产科常见疾病诊断鉴别考试答案及解析
- 医护关系舞台剧本
- 发展能源新质生产力翻译
- 2025年心理咨询心理评估技术应用模拟考试卷答案及解析
- 2025年风湿科免疫治疗药物剂量计算试卷答案及解析
- 常见肿瘤AJCC分期手册第八版(中文版)
- 绿色施工专项方案(技术方案)
- 挂篮检查验收记录表
- 专业技术职务资格申报材料真实性承诺书
- 脓毒症指南课件
- 生产副总经理岗位职责标准版本(五篇)
- 对颈椎概念和命名的再认识
- 华为信息安全宣传
- 物业管理供方管理程序
- GB/T 3730.2-1996道路车辆质量词汇和代码
- GB 25585-2010食品安全国家标准食品添加剂氯化钾
评论
0/150
提交评论