面向对象程序设计课程系**电大开放教育本科计算机科学与技术专业统设必修课程,本课程的期末复习以**电大下发的资料和网上复习指导为准。为了加强期末复习,下面市电大给出一套综合练习题,仅作参考。
综合练习题。
一、单选题。
1、 c++源程序文件的默认扩展名为( )
a:cppb:exec:objd:lik
2、 用new运算符创建一个含10个元素的一维整型数组的正确语句是( )
a: int *p=new a[10];
b: int *p=new float[10];
c: int *p=new int[10];
d: int *p=new int[10]=
3、 假定有“struct book; book *book=new book;”,则正确的语句为( )
a: strcpy((*book)->title,”wang tao”);
b: strcpy(* tao”);
c: strcpy(book->title,”wang tao”);
d: strcpy( tao”);
4、 假定指针变量p定义为“int *p=new int[30];”要释放p所指向的动态内存,应使用语句( )
a: delete p;
b: delete *p;
c: delete &p;
d: delete p;
5、 关于消息,下列说法中不正确的是( )
a: 发送消息的对象请求服务,接受消息的对象提供服务。
b: 消息的发送者必须了解消息的接收者如何相应消息。
c: 在c++中,消息的发送具体体现为对接收消息的对象的某个函数的调用。
d: 每个对象只能接收某些特定格式的消息。
6、 对于任一个类,用户所能定义的析构函数的个数至多为( )
a: 0b: 1c: 2d: 任意个。
7、 do语句能够改写为( )语句。
a: 复合 b: ifc: switch d: while
8、 假定aa为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为( )
a: x(a) b: x[a] c: x->a d:
9、 假定aa为一个类,a为该类私有的数据成员,getvalue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的格式为( )
a: b: x->getvalued:
10、 假定ab为一个类,则( )为该类的拷贝构造函数的原型说明。
a: ab(ab x); b: ab(ab& x); c: void ab(ab& xd: ab(int x);
11、 关于运算符重载,下列说法正确的是( )
a: 重载时,运算符的优先级可以改变。
b: 重载时,运算符的结合性可以改变。
c: 重载时,运算符的功能可以改变。
d: 重载时,运算符的操作数个数可以改变。
12、 下列对派生类的描述中错误的说法是:(
a: 派生类至少有一个基类。
b: 派生类可作为另一个派生类的基类。
c: 派生类除了包含它直接定义的成员外,还包含其基类的成员。
d: 派生类所继承的基类成员的访问权限保持不变。
13、 c++程序的基本模块为( )
a: 语句 b: 函数 c: 表达式 d: 标识符。
14、 以下叙述中不正确的是( )
a: 在一个函数中,可以有多条return语句。
b: 函数的定义不能嵌套,但函数的调用可以嵌套。
c: 函数必须有返回值。
d: 不同的函数中可以使用相同名字的变量。
15、 文件包含命令中被包含的文件的扩展名( )
a: 必须是。h b: 不能是。h c: 可以是。h或。cpp d: 必须是。cpp
16、 软件产品可被全部或部分地再用于新的应用的能力叫做软件的( )
a: 可维护性 b: 可复用性 c: 兼容性d: 正确性。
17、 假定一个类的构造函数为 “a(int aa, int bb) ”则执行 “a x(4,5);”语句后,和的值分别为( )
a: 4和5 b: 5和4 c: 4和20d: 20和5
18、 派生类的对象对其基类中( )可直接访问。
a: 公有继承的公有成员。
b: 公有继承的私有成员。
c: 公有继承的保护成员。
d: 私有继承的公有成员。
19、 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( )符号作为分隔符。
a: 空格或逗号b: 逗号或回车。
c: 逗号或分号d: 空格或回车。
20、 假定有定义“int b[10]; int *pb;”,则不正确的赋值语句为( )
a: pb=b[5b: *pb=new int;
c: pb=&b[0d: pb=b;
21、 假定变量a和pa定义为“double a[10], pa=a;”,要将12.35赋值给a中的下标为5的元素,不正确的语句是( )
a: pa[5]=12.35b: a[5]=12.35;
c: *pa+5)=12.35d: *a[0]+5)=12.35;
22、 关于面向对象系统分析,下列说法中不正确的是( )
a: 术语“面向对象分析”可以用缩写ooa表示。
b: 面向对象分析阶段对问题域的描述比实现阶段更详细。
c: 面向对象分析包括问题域分析和应用分析两个步骤。
d: 面向对象分析需要识别对象的内部和外部特征。
23、 在c++程序中使用的cin标识符是系统类库中定义的( )类中的一个对象。
a: istreamb: ostream
c: iostreamd: fstream
24、 假定ab为一个类,则执行 “ab *px=new ab[n];”语句时将( )
a: 动态分配一个数组。
b: 动态分配一个对象。
c: 静态分配一个数组。
d: 静态分配一个对象。
25、在下面循环语句中循环体执行的次数为( )
int i=0,s=0; while(s<20)
a: 4b: 5c: 6d: 7
26、 以下叙述不正确的是( )
a: 宏替换不占用运行时间。
b: 宏名无类型。
c: 宏替换只是字符替换。
d: 宏名必须用大写字母表示。
27、 假定一条定义语句为“int a[10], x, *pa=a;”,若要把数组a中下标为3的元素值赋给x,则不正确的语句为( )
a: x=a[3b: x=*(a+3c: x=pa[3d: x=*pa+3;
28、 如果表达式++a中的“++是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为( )
a: b: operator++(a)
c: operator++(a,1)
d: 29、 设”int a=12;”,则执行完语句”a+=a*a;”后,a的值是( )
a: 144 b: 156c: 288d: 12
30、 在一个用链表实现的队列类中,假定每个结点包含的值域用elem表示,包含的指针域用next表示,链队的队首指针用elemhead表示,队尾指针用elemtail表示,若链队为空,则进行插入时必须把新结点的地址赋给( )
a: elemhead
b: elemtail
c: elemhead和elemtail
d: elemhead或elemtail
31、 类的析构函数可以带有( )个参数。
a: 0b: 1c: 2d: 任意。
32、 下面是重载双目运算符-的成员函数原形,其中最符合-原来含义的是( )
a: value value::operator-(value);
b: value value::operator-(int);
c: value& value::operator-(value);
d: value& value::operator-(value&);
33、 在重载一运算符时,若运算符函数的形参表中没有参数,则不可能的情况是( )
a: 该运算符是一个单目运算符。
b: 该运算符函数有一个隐含的参数this。
c: 该运算符函数是类的成员函数。
d: 该运算符函数是类的友元函数。
二、编程综合题。
#include<>
void f4(int a,int n, int& s)
void main()
int x; f4(b,5,x);
cout cout #include<> void main() int b[4]=; int c[4]=; for(int i=0;i<10;i++) #include<> 一 j a的介绍。a 特点。i.面向对象。ii.多线程。iii.跨平台的。iv.高性能。v.健壮性。vi.简单性。vii.可移植性。viii.动态性。ix.解释性。x.网络的。xi.体系结构中立。b j a的运行环境。i.jdk ii.jre iii.jvm c j a运行。i.j a j a ii... 第一周 1.定义一个类,要求其成员有 1 私有数据2个。2 公有函数多个 分别能够实现对数据的赋值 返回 屏幕显示 编写程序验证。2.定义2个重载函数add,功能分别为 1 实现两个整型数据相加,并返回结果 2 实现一个整型数据的自加1,并返回结果 第二周 1.编写重载函数并验证,函数功能 对数组赋... 窗体顶端。您的本次作业分数为 99分单选题。1.第1章 不是面向对象系统的特性是 a 封装性。b 继承性。c 保密性。d 多态性。正确答案 c 单选题。2.第1章 面向对象 o o 程序设计是一种新的程序设计范型。这种范型的主要特征是 a 程序 对象 消息。b 程序 函数 调用。c 程序 算法 数据...高级面向对象程序设计
面向对象程序设计 作业
面向对象程序设计作业