总《面向对象程序设计c》综合复习题集及答案详解.pdf
《总《面向对象程序设计c》综合复习题集及答案详解.pdf》由会员分享,可在线阅读,更多相关《总《面向对象程序设计c》综合复习题集及答案详解.pdf(127页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、一、单选题1.C+源程序文件的缺省扩展名为(A )oA.cp pB.e xeC.o bjD.lik2.由 C+源程序文件编译而成的目标文件的缺省扩展名为(C )。A.cp pB.e xeC.o bjD.lik3.由 C+目标文件连接而成的可执行文件的缺省扩展名为(B )。4.5.6.7.8.9.1 0.B.e xeC.o bjD.lik)o编 写 C+程序一般需经过的几个步骤依次是(A.cp pA.编 译、编 辑、连 接、调试B.编 辑、编 译、连 接、调试C.编译、调 试、编 辑、连接D.编 辑、调试、编 辑、连接以下标识符中不全是保留字的是能 作 为 C+程序的基本单位是(A.cas ef
2、 o rin tB.d e f au ltt h e nwh ileC.bo o lclas slo n gD.g o t or e t u r nch arA.字符B.语句程 序 中 主 函 数 的 名 字 为(A.m ainB.M A I NC+程 序 的 基 本 模 块 为(A.表达式C.函数)OC.M ain)OB.标识符D.源程序文件C.语句可 用 作 C+语言用户标识符的一组标识符是(A.B.C.D.vo ida3 _b3f o r2 ad e f in e_1 2 3-abcD O+W 0 R DYNC as es ize o f存储以下数据,占 用 存 储 字 节 最 多 的
3、是(A.0B.O C.“0”D.任意标识符D.函数)oD.)O0.0)O1 1.分隔符。程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用()符号作为1 2.A.空格或逗号B.逗号或回车C.逗号或分号设“in t a=1 2;“,则执行完语句 a+=a*a;后,a 的值是(D.空格或回车)oA.1 2B.1 44C.1 56D.2 881 3.假 设 在 程 序 中 a、b、c 均被定义成整型,所 赋 的 值 都 大 于 1,则下列能正 确 表 示 代 数 式 1/abc的表达式是()o A.1.0/a*b*c B.l/(a*b*c)C.1/a/b/(f lo at)c D.1.0/a
4、/b/c1 4.设“in t a=1 5,b=2 6;“,则 co u t 0&x=1 0 的相反表达式为()。A.x 1 0 B.x 1 0C.x=0 x 0&x 1 01 7.x 0|y=5的相反表达式为()。A.x 0 U y!=5 D.x 0&y=51 8.设 x 和 y 均为bo o l量,则 x&y 为真的条件是()。A.它们均为真 B.其中一个为真C.它们均为假 D.其中一个为假1 9.设 x 和 y 均为bo o l量,则 x|y 为假的条件是()。A.它们均为真 B.其中一个为真C.它们均为假 D.其中一个为假2 0 .字符串“a+b=1 2 n”的长度为()。A.6 B,7
5、 C.8 D.92 1 .假定下列x 和 y 均 为 in t 型变量,则不正确的赋值为()。A.x+=y+B.x+=y+C.x=+y D.+x=+y2 2 .下列的符号常量定义中,错误的定义是()。A.co n s t M=1 0;B.co n s t in t M=2 0;C.co n s t ch ar ch;D.co n s t bo o l m ar k=t r u e;2 3 .循环语句af o r(in t i=0;i n;i+)co u t i*i,;”中循环体执行的次数为()oA.1 B.n-1 C.n D.n+12 4.在下面循环语句中循环体执行的次数为()。f o r(i
6、n t i=0;i n/2)br e ak;A.n/2 B.n/2+1 C.n/2-1 D.n-12 5.在下面循环语句中内层循环体S语句的执行总次数为()。f o r(in t i=0;i n;i+)f o r(in t j=i;j n;j+)S;A.n2 B.(n+l)/2 C.n(n-l)/2 D.n(n+l)/22 6.在下面循环语句中循环体执行的次数为()。in t i=0,s=0;wh ile(s 2 0)i+;s+=i;A.4 B.5 C.6 D.72 7.在下面循环语句中循环体执行的次数为()。in t i=0;d o i+;wh ile(i*i t i t l e,n W a
7、 ng Ta ow;B.s t r e py (b ook,t i t l e,W a ng T a o);C.s t r e py(*b ook.t i t l e,W a ng Ta o);D.s t r e py (*b ook)-t i t l e,W a ngTa o);8 6.假 定 有s t r uc t BOOK c h a r t i t l e 40;f l oa t pr i c e;BOOK*b ook;n,则不正确的语句为()。A.BOOK*x=ne w b ook;B.BOOK x=C+P r og r a m m i ng”,27.0;C.BOOK*x=ne w
8、BOOK;D.BOOK*x=b ook;8 7.假 定 有 s t r uc t BOOK c h a r t i t l e 40;f l oa t pr i c e;b ook;,则正确的语句为()。A.BOOK&x=&b ook;B.BOOK&x=b ook;C.BOOK&x=ne w BOOK;D.BOOK&x=B00K;8 8 .下列对引用的陈述中不正确的是()。A.每一个引用都是其所引用对象的别名,因此必须初始化B.形式上针对引用的操作实际上作用于它所引用的对象C.一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行D.不需要单独为引用分配存储空间8 9 .假定变量a
9、和 pa 定 义 为“d oub l e a 10,*pa=a;,要 将 12.35赋值给a中的下标为5 的元素,不正确的语句是()。A.pa 5=12.35;B.a 5 12.35;C.*(pa+5)=12.35;D.*(a 0+5)=12.35;9 0.假定变量b 和 pb 定 义 为“i nt b 10,*pb=b;,要将24赋值给b l 元素中,不正确的语句是()。A.*(pb+l)=24;B.*(b+l)=24;C.*+b=24;D.*+pb=24;9 1.假定指针变量p 定义为i nt *p=ne w i nt(100);”,要释放p 所指向的动态内存,应使用语句()。A.d e
10、l e t e p;B.d e l e t e *p;C.d e l e t e&p;D.d e l e t e p;9 2.假定指针变量p 定 义 为 i nt *p=ne w i nt 30;,要释放p 所指向的动态内存,应使用语句()。A.d e l e t e p;B.d e l e t e *p;C.d e l e t e&p;D.d e l e t e p;9 3.假定变量x 定义为“i nt x=5;,要使r x 成为x的引用(别名),r x 应定义为()。A.i nt r x=x;B.i nt r x=&x;C.i nt *r x=&x;D.i nt&r x=x;9 4.关于消
11、息,下列说法中不正确的是()。A.发送消息的对象请求服务,接受消息的对象提供服务B.消息的发送者必须了解消息的接收者如何相应消息C.在 C+中,消息的发送具体体现为对接收消息的对象的某个函数的调用D.每个对象只能接收某些特定格式的消息9 5.关于封装,下列说法中不正确的是()。A.通过封装,对象的全部属性和操作结合在一起,形成一个整体B.通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)C.通过封装,每个对象都成为相对独立的实体D.通过封装,对象的属性都是不可见的9 6 .面向对象方法的多态性是指()。A.一个类可以派生出多个特殊类B.一个对象在不同的运行环境中可以有不同的变体C.针对一
12、消息,不同的对象可以以适合自身的方式加以响应D.一个对象可以是由多个其他对象组合而成的9 7 .软件产品在需求发生变化、运行环境发生变化或发现软件产品本身的错误或不足时进行相应的软件更新的难易程度叫做软件的()。A.可维护性 B.可复用性 C.兼容性 D.正确性9 8 .软件产品可被全部或部分地再用于新的应用的能力叫做软件的()。A.可维护性 B.可复用性 C.兼容性 D.正确性9 9 .软件产品与其他软件产品组合成一个整体的难易程度叫做软件的()。A.可维护性 B.可复用性 C.兼容性 D.正确性1 0 0 .软件产品准确执行软件需求规格说明书中所规定的任务的能力叫做软件的()。A.可维护性
13、 B.可复用性 C.兼容性 D.正确性1 0 1 .面向对象软件开发中使用的0 0 A 表 示()。A.面向对象分析 B.面向对象设计C.面向对象语言 D.面向对象方法1 0 2 .面向对象软件开发中使用的0 0 D 表 示()。A.面向对象分析 B.面向对象设计C.面向对象语言 D.面向对象方法1 0 3 .关于面向对象系统分析,下列说法中不正确的是()。A.术 语“面向对象分析”可以用缩写0 0 A 表示B.面向对象分析阶段对问题域的描述比实现阶段更详细C.面向对象分析包括问题域分析和应用分析两个步骤D.面向对象分析需要识别对象的内部和外部特征1 0 4 .在一个类的定义中,包 含 有()
14、成员的定义。A.数据 B.函数 C.数据和函数 D.数据或函数1 0 5.在类作用域中能够通过直接使用该类的()成员名进行访问。A.私有 B.公用 C.保护 D.任何1 0 6 .在关键字p u b l i c后面定义的成员为类的()成员。A.私有 B.公用 C.保护 D.任何1 0 7 .在关键字p r i v a t e 后面定义的成员为类的()成员。A.私有 B.公用 C.保护 D.任何1 0 8 .假定A A 为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x 对象中数据成员a的格式为()。A.x (a)B.x a C.x-a D.x.a1 0 9 .假定A A 为一个类,
15、a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为()。A.x.a B.x.a()C.x-a D.x-a ()1 1 0 .假定A A 为一个类,a为该类公有的数据成员,p x 为指向该类对象的一个指针,则访问p x 所指对象中数据成员a的格式为()。A.p x(a)B.p x a C.p x-a D.p x.a1 1 1 .假定A A 为一个类,a为该类私有的数据成员,G e t V a l u e O 为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x 对象中数据成员a的格式为()。A.X.a B.x.a()C.x-G e t V a l u
16、e()D.x.G e t V a l u e O1 1 2 .假定A A 为一个类,i n t a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为()。A.i n t A A:a ()B.i n t A A:a()C.A A:a()D.A A:i n t a()1 1 3 .假定A A 为一个类,a为该类公有的数据成员,若要在该类的个成员函数中访问它,则书写格式为()。A.a B.A A:a C.a()D.A A:a()1 1 4 .若需要把一个类外定义的成员函数指明为内联函数,则必须把关键字()放在函数原型或函数头的前面。A.i n B.i n l i n e C.i n
17、L i n e D.I n L i n e r1 1 5.在多文件结构的程序中,通常把类的定义单独存放于()中。A.主文件 B.实现文件 C.库文件 D.头文件116 .在多文件结构的程序中,通常把类中所有非内联函数的定义单独存放于()中。A.主文件 B.实现文件 C.库文件 D.头文件117.在多文件结构的程序中,通常把含有m ai n。函数的文件称为()。A.主文件 B.实现文件 C.程序文件 D.头文件118 .一个C+程序文件的扩展名为()。A.h B.c C.cp p D.cp119 .在 C+程序中使用的ci n标识符是系统类库中定义的()类中的一个对象。A.i s t r eam
18、 B.o s t r eam C.i o s t r eam D.fs t r eam120.在 C+程序中使用的co u t 标识符是系统类库中定义的()类中的一个对象。A.i s t r eam B.o s t r eam C.i o s t r eam D.fs t r eam121.假定AA是一个类,abc是该类的一个成员函数,则参数表中隐含的第一个参数的类 型 为()。A.i nt B.ch ar C.AA D.AA*122.假定AA是一个类,abc是该类的一个成员函数,则参数表中隐含的第一个参数为()OA.abc B.*t h i s C.t h i s D.t h i s&123
19、 .假定AA是一个类,“AA&abc();”是该类中一个成员函数的原型,若该函数存在对*t h i s 赋值的语句,当用x.abcO调用该成员函数后,x的 值()。A.已经被改变 B.可能被改变C.不变 D.不受函数调用的影响124 .假定AA是一个类,“AA*abcOco ns t;”是该类中一个成员函数的原型,若该函数返回t h i s 值,当用x.abcO调用该成员函数后,x的 值()。A.已经被改变 B.可能被改变C.不变 1).受到函数调用的影响125 .类中定义的成员默认为()访问属性。A.p u bl i c B.p r i v at e C.p r o t ect ed D.f
20、r i end126 .结构中定义的成员默认为()访问属性。A.p u bl i c B.p r i v at e C.p r o t ect ed D.fr i end127.当类中一个字符指针成员指向具有n 个字节的存储空间时,它所能存储字符串的最大长度为()oA.n B.n+1 C.n-1 D.n-2128 .在一个用数组实现的队列类中,假定数组长度为M S,队首元素位置为fi r s t,队列长度为l eng t h,则 队 尾(即最后一个)元素的位置为()oA.l eng t h+1 B.fi r s t+l eng t hC.(f i r s t+l eng t h-1)%MS D
21、.(f i r s t+l eng t h)%MS129 .在一个用数组实现的队列类中,假定数组长度为M S,队首元素位置为fi r s t,队列长度为l eng t h,则队尾的后一个位置为()。A.l eng t h+1 B.fi r s t+l eng t hC.(fi r s t+l eng t h-1)%MS D.(f i r s t+l eng t h)%MS13 0.在一个用数组实现的队列类中,假定数组长度为M S,队首元素位置为fi r s t,队列长度为l eng t h,则队首的后一个位置为()。A.fi r s t+1 B.(fi r s t+l)%MSC.(fi r s
22、 t-l)%MS D.(f i r s t+l eng t h)%MS13 1.在一个用链表实现的队列类中,假定每个结点包含的值域用el em 表示,包含的指针域用nex t 表示,链队的队首指针用el em H ead表示,队尾指针用el em Tai l 表示,若链队非空,则进行插入时必须把新结点的地址赋给()。A.el em H ead B.el em Tai lC.el em H ead nex t 和 el em H ead D.el em Tai l nex t 和 el em Tai l13 2.在一个用链表实现的队列类中,假定每个结点包含的值域用el em 表示,包含的指针域用
23、nex t 表示,链队的队首指针用el em H ead表示,队尾指针用el em Tai l 表示,若链队为空,则进行插入时必须把新结点的地址赋给()。A.el em H eadB.el em Tai 1C.el em H ead 和 el em Tai lD.el em H ead 或 el em Tai l13 3 .队列具有()的操作特性。A.先进先出 B.先进后出13 4 .栈 具 有()的操作特性。A.先进先出 B.先进后出C.进出无序C.进出无序D.进出任意D.进出任意13 5 .对于一个类的构造函数,其函数名与类名()。A.完全相同 B.基本相同 C.不相同 D.无关系13 6
24、 .对于一个类的析构函数,其函数名与类名()A.完全相同 B.完全不同C.只相差一个字符 D.无关系13 7.类的构造函数是在定义该类的个()时被自动调用执行的。A.成员函数 B.数据成员C.对象 D.友元函数13 8 .类的析构函数是个对象被()时自动调用的。A.建立 B.撤消 C.赋值 D.引用13 9 .一个类的构造函数通常被定义为该类的()成员。A.公用 B.保 护 C.私有 D.友元14 0.一个类的析构函数通常被定义为该类的()成员。A.私有 B.保护 C.公用 D.友元14 1.假 定 AB 为一个类,则 执 行“AB x;”语句时将自动调用该类的()。A.带 参 构 造 函 数
25、 B.无参构造函数 C.拷贝构造函数 D.赋值重载函数14 2.假定AB 为一个类,则 执 行“AB x (a,5);”语句时将自动调用该类的()。A.带 参 构 造 函 数 B.无参构造函数 C.拷贝构造函数 D.赋值重载函数14 3 .假定AB 为一个类,则 执 行 AB *s=new AB(a,5)语句时得到的一个动态对象为。A.s B.s-a C.s.a D.*s14 4 .假定AB 为一个类,则 执 行“AB r l=r 2;”语句时将自动调用该类的(兀A.无 参 构 造 函 数 B.带参构造函数 C.赋值重载函数 D.拷贝构造函数14 5 .若需要使类中的一个指针成员指向一块动态存
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象程序设计c 面向 对象 程序设计 综合 复习题 答案 详解
限制150内