C++复习题库+C++试题库.pdf
《C++复习题库+C++试题库.pdf》由会员分享,可在线阅读,更多相关《C++复习题库+C++试题库.pdf(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C.1 6 D.1 7I a+=a-=a*a j后,变量a的 值 据()。批注 w 2 :C.-40 D.-601 .下列字符列中,可作为C+语言程序自定义标识符是()。A.s w it ch B.f ile C.br e a k D.do2 .运 算 符+、=、=、%中,优先级最低的运算符是()。A.+B.=C.=D.%3.设变量m,n,a,b,c,d均为0,执行(m=a=b)1 1 (n=c=d)后,m,n的 值 是().批注 w l:短路A.0,0 B.0,1 C.1,0 D.1,14.字符串 v a x 43n p 1 0 2 du”的长度是()。A.8 B.95.设有代码“in t
2、a =6;,则执行1A.0 B.-246.v o id ma in ()in t x=-l;do x=x*x;w hile(!x);下列说法正确的是(A.是死循环C.循环执行一次7.下面有关f o r循环的正确描述是()B.循环执行两次D.有语法错误)oA.f o r循环只能用于循环次数已经确定的情况B.f o r循环是先执行循环体语句,后判断表达式C.在f o r循环中,不能用br e a k语句跳出循环体D.f o r循环的循环体语句中,可以包含多条语句,但必须用大括号括起来8.下面程序段(x=3;批注 w 3:从右到左x=2为真1时do y=x;if(!y)co u t *x”;co n
3、 t in u e;co u t w#;w hile(l=x=2);(l=x)=1,0 bo o l 型A.将输出#B.将输出价*C.是死循环 D,含有不合法的控制表达式9.以下正确的说法是().A.用户若需要调用标准函数,调用前必须重新定义B.用户可以直接调用所有标准库函数C.用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数D.用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数1 0.在参数传递过程中,对形参和实参的要求是 _1 批注 w 4A.函数定义时,形参一直占用存储空间B.实参可以是常量、变量或表达式C.形参可以是常量、变量或表达式D.形参和
4、实参类型和个数都可以不同1 1 .对数组名作函数的参数,下面描述正确的鼎。批注 W%A.数组名作函数的参数,调用时将实参数组复制给形参数组B.数组名作函数的参数,主调函数和被调函数共用一段存储单元C.数组名作参数时,形参定义的数组长度不能省略D.数组名作参数,不能改变主调函数中的数据1 2 .若有语句 in t a 1 0 =0,1,2,3,4,5,6,7,8,9,*p=a;则()不是对 a 数组元素的正确引用(其中0 W i1 0)。A.p i B.*(a+i)C.a p-a D.*(&a i)1 3.以下程序的输出结果是()in clu de v o id ma in O cha r s
5、=*1 2 1 342 1in t v l=0,v 2=0,v 3=0,v 4=0;v l v 2 v 3 v 4f o r (p=s;*p;p+)2434s w it ch(*p)ca s e r :v l+;ca s e 3 :v 3+;ca s e 2 :v 2+;de f a u lt:v 4+;co u t v l*,*v 2 *,*v 3 *,*v 4 e n d l;)A.4,2,1,1 B.4,7,5,81 4.下列声明结构体变量错误的是(A.s t r u ct s t u de n t in t n o;cha r n a me 1 6;s t l,s t 2;C.s t
6、r u ct s t u de n t in t n o;cha r n a me 1 6;);s t r u ct s t l,s t 2;1 5.对类的构造函数和析构函数描述正确的是()oA.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.7,3,2,1 D.8,8,8,8)oB.stru c t stu d e n t i n t n o;c h a r n a me 1 6 ;;stru c t stu d e n t stl,st2D.stru c t stu d e n t i n t n o;c h a r n a me 1 6 ;;stu d e n
7、 t stl,st2;C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载1 6 .下面对于友元函数描述正确的是()。A.友元函数的实现必须在类的内部定义 B.友元函数是类的成员C.友元函数破坏了类的封装性和隐藏性 D.友元函数不能访问类的私有成员1 7 .派生类的对象对它的基类成员中()是可以访问的。A.公有继承的公有成员 B.公有继承的私有成员C.公有继承的保护成员 D.私有继承的公有成员1 8 .C+类体系中,不能被派生类继承的有(A.构造函数 B,虚函数 C.静态成员函数 D.赋值操作函数1 9 .以 下()成员函数表示虚函数。A.v i rtu a l i
8、 n t v f(i n t);B.v o i d v f(i n t)=O;C.v i rtu a l v o i d v f()=0;D v i rtu a l v o i d v f(i n t);一批注L6:纯虚函数,不用定义2 0 .下面对静态数据成员的描述中,正确的是()oA.静态数据成员可以在类体内进行初始化B.静态数据成员不可以在类体内进行初始化C.静态数据成员不能受pri v a te控制符的作用D.静态数据成员可以宜接用类名调用?2 1 .继承具有(),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。A.规律性 B.传递性 C.重复性 D.多样性2
9、 2.若有以下定义,则释放指针所指内存空间的操作是().f l o a t r=n e w s f l o a t 1 0 ;A.d e l e te r;B.d e l e te *r;C.d e l e te r;D.d e l e te r ;2 3.若有以下定义,则对字符串的操作错误的是(D.c h a r s 1 0 =P ro g ra m”,.strc py (s,t);C.strc a t(th i s,t);2 4.在i f语句中的表达式是(A.只能是表达式C.只能是逻辑表达式批注L8:Copy t to s-批注w7:strcat(sl,s2):add s2 to sis
10、tail.-B.c o u t strl e n (s)jD.c i n t;).B.只能是关系表达式和逻辑表达式D.可以是任意表达式2 5.在用关键字c l a ss定义的类中,以下叙述正确的是().A.在类中,不作特别说明的数据成员均为私有类型B.在类中,不作特别说明的数据成员均为公有类型C.类成员的定义必须是成员变量定义在前,成员函数定义在后D.类的成员定义必须放在类定义体内部参考答案:1234567891 0 1 1 1 2 131 4 1 5BCC BDC DCDBBBBCA1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5CAADBBCCDA公共基础知识
11、一、选择题(1)下列关于栈的叙述正确的是A般是非线性结构 B)栈是一种树状结构C戏具有先进先出的特征 D)栈具有后进先出的特征(2)结构化程序设计所规定的三种基本控制结构是A瀚 入、处理、输出 B阚形、网形、环形C)顺序、选择、循环 D)主程序、子程序、函数(3 )结构化程序设计的一种基本方法制 批注 w 9:A洲选法 B)递 归 法。归纳法 D)逐步求精法(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是:A)选择 B股影 C)连接 D)#一:选择题:Q)D(2)C D(4)BC+语言程序设计一、选择题(1)C+
12、语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是。A)面向过程 B)面向对象 C俄全性 D)复用性(2 )C+语言的跳转语句中,对 于bre a k和c o n ti n u e说法正确的是()A )bre a k语句只应用与循环体中B C o n ti n u e语句只应用与循环体中C)bre a k是无条件跳转语句,c o n ti n u e不是D)b g a k和c o n ti n u e的跳转范围不够明确,容易产生问题(3 )f o r(i n tx=0 ,y=o;!x&y v=5;y+)语句执行循环的次数是。A)0 B)5 C)6 D)无次
13、数(4 )考虑函数原型(v o i d te st(i n t a,i n t b=7,c h a r=*)|,下面的函数调用中,属于不合法一 批注 L 1 0 :默认参数格式调用的是()A )te st6);B)te st,8);C)te st(6,#n)D)te st(0,0.*H);(5)下面有关重载函数的说法中正确的是。A通载函数必须具有不同的返回值类型;B)重载函数形参个数必须不同;C)重载函数必须有不同的形参列表 D)重载函数名可以不同;(6 )下列关于构造函数的描述中,错误的是()A潮造函数可以设置默认参数;B)构造函数在定义类对象时自动执行C购造函数可以是内联函数;D)构造函数
14、不可以重载(7)下面描述中,表达错误的是。A松有继承时基类中的pu bl i c成员在派生类中仍是pu bl i c的B)公有继承是基类中的pri v a te成员在派生类中仍是pri v a te的C念有继承时基类中的pro te c te d成员在派生类中仍是pro te c te d的D淞有继承时基类中的pu bl i c成员在派生类中是pri v a te的(8 )应在下列程序划线处填入的正确语句是()#i n c i i d ec l a ss B a se pu bl i c:v o i d f u n()c o u t,B a se:f u n,;c l a ss D e ri
15、v e d:pu b l i e B a se v o i d f u n()f i l e:/显示调用基类的函数f u n()c o u t ,D e ri v e d:f u n*,f u n();(9)有如下程序:#i n c l u d ec l a s s B A S E c h a rc;p u b l i c:BAS E(c h a r n):c(n)v i rt u a I-BAS E()c o u t c ;c l a s s D ER IV ED :p u b l k BAS E c h a r c;p u b l i c:D ER IV ED(c h a r n):BAS
16、 E(n+l),c(n)D ER IV ED()c o u t 0的值 A)为 true B)为 false C)与 x 的值相同 D)与 x 的值相反(3)执行语句序列int n;cinn;switch(n)case 1:case 2:cout*X*;case 3:case 4:cout*Y*;break;default:coutZ,;时,不可能出现的情况是oA)显示:X B)显示:Y C)显示:Z D)显示:XY(4)执行语句序列int x;cinx;if(x250)coutX*;if(xival=rc.ival+l;rc.ra-cval=rc.ra-ival+l;coutrc.ival,
17、rc.ra-ival,rc.rb.ra.ival;后,显示在屏幕上的是oA)67,69,70 B)66,67,70 C)67,68,69 D)66,67,68批注lwl4:(1 9)类的默认的拷贝构造函数JoA)在任何情况下都存在B)仅当未定义拷贝构造函数时存在C)仅当未定义有参构造函数时存在D)仅当未定义任何构造函数时存在(20)语句 ofstream f(SALARY.DAT,ios:nocreate I ios:trunc):的功能是建立流对象 f,并试图打开文件SALARY.DAT并与之连接,而且.A)若文件存在,将文件指针定位于文件尾;若文件不存在,建立一个新文件。B)若文件存在,将
18、其截为空文件;若文件不存在,打开失败。C)若文件存在,将文件指针定位于文件首;若文件不存在,建立一个新文件。D)若文件存在,打开失败;若文件不存在,建立一个新文件。答案:15:DDACA 610:CADBC11 15:ADADC 1620:DDBBBC+试题21.下列变量名中,()是合法的。A.56A B._abc C.d-Ptr D.while2.下列各种运算符中,()优先级最高。A.+B.&C.=D.*=3.设变量 m,n,a,b,c,d 均为 0,执行(m =a=b)&(n=c=d)后,m,n 的 值 是()。A.0,0 B,0,1 C.1,0 D.b 14.字符串 tv0w hichn
19、”的长度是()oA.4 B.10 C.9 D.字符串有非法字符,输出值不确定5.设 a=2,b=3,c=2;计算 a+=b*=(+b-c+)中 a、b、c 的 值()。A.8、6、2 B.2、4、2 C.10、8、3 D.5、3、36.已知:int i=5,下 列 do-while循环语句的循环次数为()。do couti e n d l;i一;while(i!=0);A.0 B.1 C.5 D.无限批注W15:7.下面关于循环语句的描述中,()是错误的。A.循环体内可以包含有循环语句B.循环体内必须同时出现break语句和continue语句C.循环体内可以出现选择语句D.循环体内可以是空语
20、句8.下面程序段(x=3;批注lwl6:doy=x;if(!y)cout=l&x=2);A.将输出琳 B.将输出#相C.是死循环 D.含有不合法的控制表达式9.在函数的定义格式中,下面各组成部分中,()是可以省略的 批注W 17:A.函数名 B.函数体 C.函数数据类型说明 D.函数参数10.在函数的引用调用时,实参和形参应该是使用().A.变量值和变量 B.地址值和指针C.变量值和 引 用D.地址值和引用11.以下关于文件操作的叙述中,不正确的是().A.打开文件的目的是使文件对象与磁盘文件建立联系B.文件读写过程中,程序将直接与磁盘文件进行数据交换C.关闭文件的目的之一是保证将输出的数据写
21、入硬盘文件D.关闭文件的目的之一是释放内存中的文件对象12.若有语句 int a10=0,1,2,3,4,5,6,7,8,9,*p=a;则()不是对 a 数组元素的正确引用(其中owiio|)。批注 w)8 :A.pi B.(*(a+i)C.ap-a D.*(&ai)13.以下程序的输出结果是()o#include void mainOchar s=*abcdefbcde*,*p=s;int vl=0,v2=0,v3=0,v4=0;for(p;*p;p+)switch(*p)(case a :vl+;break;case b:v3+;break;case e :v2+;break;defaul
22、t:v4+;)coutvl*v2*,*v3*,*v4endl;)A.1,2,2,5 B.4,7,5,8 C.1,5,3,10 D.8,8,8,814.下列结构体定义,正确的是.批注W 19J:A.record B.struct record int no;int no;char num16;char num16;float score;float score;;C.struct record D.struct record int no;int noc h a r n u m 16;f l o a t s c o re ;;c h a r n u m 16f l o a t s c o re1
23、5.下列是构造函数的特点,()是错误|的:A.构造函数是一种成员函数,它具有一般成员函数的痔点B.构造函数的名称与其类名相同C.构造函数必须指明其类型D.一个类中可定义一个或多个构造函数批注w20:16.关于友元函数的描述中,()是镯的A.友元函数是成员函数,它被说明在类体内B.友元函数可直接访问类中的私有成员C.友元函数破坏封装性,使用时尽量少用D.友元类中的所有成员函数都是友元函数 批注 lw21J:17.下列对派生类的描述中,()是错误的。A.一个派生类可以作为另一个派生类的基类B.派生类至少应有一个基类C.基类中成员访问权限继承到派生类中都保持不变D.派生类的成员除了自已定义的成员外,
24、还包含了它的基类成员18.C+类体系中,能被派生类继承的有().A.构造函数 B.虚函数 C.友元函数 D.析构函数19.关于下列虚函数的描述中,()是正确的。A.虚函数是一个s t a t i c存储类的成员函数B.虚函数是一个非成员函数C.基类中说明了虚函数后,派生类中将其对应的函数可不必说明为虚函数D.派生类的虚函数与基类的虚函数应具有不同的类型或个数2 0.以下有关静态数据成员函数的叙述不正确的是().批注M22J:A.静态成员函数属于整个类B.对静态成员函数的引用不允许使用对象名C.在静态成员函数中不能直接引用类的非静态成员D.使用类名可以直接调用其静态成员函数21.下列有关运算符重
25、载的描述中,(A.运算符重载可改变其优先级C.运算符重载可改变其结合性)是 正 确 的;_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 批 注 w23:B.运算符重载福变箕语法结而D.运算符重载可改变其操作数的个数22.对n e w运算符的下列描述中,()是错误的。A.它可以动态创建对象和对象数组B.用它创建对象数组时必须指定初始值C.用它创建对象时要调用构造函数D.用它创建的对象可以使用运算符d e l e t e来释放23.下列是为字符数组赋字符串的语句组,其中错误是().A.c h a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 复习 题库 试题库
限制150内