ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:20.22KB ,
资源ID:15535310      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-15535310.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++习题监控软件设计嘉兴学院.docx)为本站会员(b****7)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

C++习题监控软件设计嘉兴学院.docx

1、C+习题监控软件设计嘉兴学院一、 选择题(1)C+语言是从早期的C语言逐渐发展演变而来的。与C语言相比,它在求解问题方法上进行的最大改进是( )A)面向过程B)面向对象C)安全性D)复用性(2)下面有关重载函数的说法中正确的是( )A)重载函数必须具有不同的返回值类型;B)重载函数形参个数必须不同;C)重载函数必须有不同的形参列表D)重载函数名可以不同;(3)下列关于构造函数的描述中,错误的是( )A)构造函数可以设置默认参数; B)构造函数在定义类对象时自动执行C)构造函数可以是内联函数; D)构造函数不可以重载(4)下面关于C+中类的继承与派生的说法错误的是:( )A)基类的protect

2、ed成员在公有派生类的成员函数中可以直接使用B)基类的protected成员在私有派生类的成员函数中可以直接使用C)私有派生时,基类的所有成员访问权限在派生类中保持不变D)继承可以分为单一继承与多重继承(5)C+语言中提供内存申请运算符( ),它能可靠地控制内存的分配。A)deleteB)newC)posD)auto(6)若执行完以下语句,i和j的值分别为( )。inti;int&j=i;i=5;j=i+1;A) 5,5B) 5,6C) 6,6D) 6,5(7)类MyClass的定义如下:class MyClasspublic:MyClass()value=0;SetValue(int i)v

3、alue=i;private:int value;则对语句:MyClass *p,my;p=&my;正确的描述是( )。A)语句p=&my;是把对象my赋值给指针变量p;B)语句MyClass *p,my;会调用两次类MyClass的构造函数C)语句*p.SetValue(5)的调用是正确的D)语句p-SetValue(5)与my.SetValue(5)等价(8)通常拷贝构造函数的参数是( )。A)某个对象名B)某个对象的成员名C)某个对象的引用名D)某个对象的指针名(9)有以下类的定义,其中出错的位置是( )。class CsampleCsample();/ Apublic:int a=10

4、;/ BCsample(int a0);/ CCsample();/ D;(10)以下叙述中不正确的是( )。A)在类定义中,通常是用成员变量描述对象的属性;用成员函数描述对象的行为B)类的一个成员只能具有一种访问控制属性C)构造函数和析构函数是特殊的成员函数,因此不允许重载D)通过对象只能访问类的公有成员(11)友元函数的作用是( )。A)提高程序的效率B)加强类的封装性C)实现数据的隐蔽性D)增加成员函数的种类(12)以下关于派生机制的描述中,不正确的是( )。A)派生类不仅可以继承基类的成员,也可以添加自己的成员B)设置protected成员是为派生类访问基类成员之用C)采用不同的继承方

5、式,将限制派生类对基类成员的使用D)采用私有继承,派生类只能得到基类的公有成员(13)设有以下定义:#includeclass A1public:void show1() cout”class A1”endl; ;class A2: public A1public:void show2( ) cout”class A2”endl; ;class A3: protected A2public:void show3( ) cout”class A3”obj2被C+编译器解释为( )。A)operator (obj1,obj2)B)(obj1,obj2)C)obj2.operator (obj1)

6、D)obj1.operator (obj2)(16) 下面描述中,表达错误的是( )。A)公有继承时基类中的public成员在派生类中仍是public的B)公有继承时基类中的private成员在派生类中仍是private的C)公有继承时基类中的protected成员在派生类中仍是protected的D)私有继承时基类中的public成员在派生类中是private的(17) 一个C+类( )。A)只能有一个构造函数和一个析构函数B)可以有一个构造函数和多个析构函数C)可以有多个构造函数和一个析构函数 D)可以有多个构造函数和多个析构函数(18) 派生类的对象对它的基类成员中( )是可以访问的。A

7、)公有继承的公有成员B)公有继承的私有成员C)公有继承的保护成员D)私有继承的公有成员(19) 有关析构函数的说法不正确的是( )。A)析构函数有且只有一个B)析构函数无任何函数类型C)析构函数和构造函数一样可以有形参D)析构函数的作用是在对象被撤销时收回先前分配的内存空间(20) 以下属于析构函数特征的是()A)析构函数名与类名不能相同B)析构函数的定义必须在类体内C)析构函数可以带或不带参数D)在一个类中析构函数有且仅有一个(21) 设有以下类和对象的定义:class Apublic:int m;.;A k1,k2,*p1,*p2;则下面针对成员变量m的引用,正确的是()A) k1.m=1

8、;B) k2-m=2;C) p1.m=3;D) (*p2)-m=4;(22) 以下有关成员函数特征的叙述不正确的是()A) 成员函数一定是内联函数B) 成员函数可以重载C) 成员函数可以设置缺省数值D) 成员函数可以是静态的(23) 以下叙述中不正确的是()A) 一个类的友元函数可以无条件的使用这个类的私有成员B) 静态成员函数可以直接访问非静态数据成员C) 不可以声明抽象类的对象,但可以声明抽象类的指针变量D) 静态数据成员为类的所有对象所共享(24) 以下为Cint类的私有变量n赋初值的形式中不正确的是()A)class CintB) class Cintint n;int n;Cint(

9、):n(0)Cint(int v):n(v) .;C) class CintD) class Cintint n=10;int n;Cint(int m=10):n=m; ;(25) 对new运算符的下列描述中,()是错误的。A)它可以动态创建对象和对象数组B)用它创建对象数组时必须指定初始值C)用它创建对象时要调用构造函数D)用它创建的对象可以使用运算符delete来释放二、 填空1) 在用class定义一个类时,数据成员和成员函数的默认访问权限是。2) 已知int DBL(intn)returnn+n;和long DBL(longn)returnn+n;是一个函数模板的两个实例,则该函数模

10、板的定义是。3) 类是对象的;而对象则是类的。4) 定义内联函数所用的关键字,定义友元所用的关键字为。5) 如类中没有明确定义析构函数,清除对象的工作由来完成,原因是。6) 生成一个派生类对象时,先调用的构造函数,然后调用的构造函数。7) 在继承关系中,称为多重继承,称为单继承。8) 若在I/O流的输出中使用控制符setfill()设置填充字符,应包含的头文件是。9) 在私有继承关系下,基类的公有成员和保护成员将成为派生类中的成员,它们只能由来访问。10) 设A为test类的对象且赋有初值,则语句test B(A);表示。11) 在MFC应用程序中,方法使得程序员可以不直接面对一个物理文件而进

11、行文档的读写。12) 应用程序框架中,除类以外都有统一的命名规则。13) 视图类成员函数OnDraw()的作用是。14) ClassWizard类向导的页面主要用来为对话框类添加和删除与对话框控件关联的成员变量。15) 类是对象的(1);而对象则是类的具体(2)。16) 在C+中定义类时,通常是利用(3)描述对象的“特征”; 利用(4)描述对象的“行为”。17) 在私有继承关系下,基类的公有成员和保护成员将成为派生类中的(5)成员,它们只能由派生类的(6)来访问;基类的私有成员将成为派生类中的(7)成员。18) 利用“对象名.成员变量”形式访问的对象成员仅限于被声明为(8)的成员;若要访问其他

12、成员变量,需要通过(9)函数或(10)函数。19) 单目运算符作为类成员函数重载时有(11)形参;双目运算符作为(12)重载时只需声明其右操作数,作为(13)重载时需声明全部操作数。20) 除(14)类以外,应用程序框架中类的命名规则一般遵照如下要求:(15)21) MFC中的(16)结构用于数据处理工作,其中(17)用于管理和维护数据,(18)用来显示和编辑数据。22) 有关对话框的常用成员函数中,(19)用来显示对话框窗口,(20)用来实现对话框数据交换。三、 程序分析题1、写出下列程序的运行结果#include class CSample public: CSample(); void

13、Display();private: int i; static int k;CSample:CSample() i=0; k+;void CSample:Display() couti=i,k=kendl;int CSample:k=0;void main() CSample a,b; a.Display(); b.Display();2、写出下列程序的运行结果#include#includeclass person int age; char name10;public: void init(int i, char *str) age=i; strcpy(name,str); void d

14、isplay() coutname is age years old.n; ;void main() person demo; demo.init(30,li-ming); demo.display();3、写出下列程序的运行结果#include class base public: virtual void show() coutclass base show() is called.n;class derived:public basepublic: void show() coutshow();void main() base demo1; derived demo2; display(

15、&demo1); display(&demo2);4、指出下列程序的错误,并说明原因。#include class Apublic:void A(inti=0)m=i;void show()coutm;void A()private:intm;void main()Aa(5);a.m+=10;a.show();5、分析找出以下程序中的错误,说明错误原因,给出两种修改方案使之能正确运行。#includeclass Point int x,y; public: Point(int a=0,int b=0) x=a; y=b; void move(int xoffset,int yoffset) x

16、+=xoffset; y+=yoffset; int getx() return x; int gety() return y;class Rectangle:protected Point int length,width;public: Rectangle(int x,int y,int l,int w):Point(x,y) length=l;width=w; int getlength()return length; int getwidth()return width;void main() Rectangle r(0,0,8,4); r.move(23,56); coutr.get

17、x(),r.gety(),r.getlength(),r.getwidth()endl;6、指出下列程序段中的错误,并说明错误原因。class X /1public: /2 int readme() const return m; /3 void writeme(int i) m=i; /4private: /5 int m; /6; /7void f(X& x1,const X& x2) /8 x1.readme(); /9 x1.writeme(1); /10 x2.readme(); /11 x2.writeme(2); /12 /137写出下列程序的运行结果#include class

18、 Bpublic: B( ) ; B(int i, int j );void printb();private: int a,b;class A public: A( ) ; A(int i, int j); void printa();private: B c;A:A(int i, int j ):c(i,j);void A:printa( ) c.printb( );B:B(int i, int j ) a=i; b=j;void B:printb( ) couta=a,b=bendl;void main( ) A m(7,8); m.printa( );8、写出下列程序的运行结果#inc

19、lude#includeclass person int age; char *name;public: person(int i, char *str) int j; j=strlen(str)+1; name=new charj; strcpy(name,str); age=i; person() delete name; coutdestructor is called.n; void display() coutname is age years old.n; ;void main() person demo(30,Li-ming); demo.display();9、写出下列程序的运行结果#include class base public: virtual void show() coutclass base show() is called.n;class derived:public basepublic: void show() coutshow();void main() base demo1; derived demo2; display(&demo1); display(&demo2);

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2