2023年面向对象程序设计复习题集.pdf
《2023年面向对象程序设计复习题集.pdf》由会员分享,可在线阅读,更多相关《2023年面向对象程序设计复习题集.pdf(75页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、c+面向对象程序设计复习题集下面习题基本上都有参考答案,请大家试着把答案去掉,能不能完毕一、单项选择题1.C+源程序文献的默认扩展名为(A)。A.c p pB.e x eC.objD.lik2.由C+源程序文献编译而成的目的文献的默认扩展名为(C)oA.cppB.exeC.o b jD.1 i k3.由C+目的文献连接而成的可执行文献的默认扩展名为(B.exeB4.A.cppC.objD.likC+程序从上机到得到结果的几个操作环节依次是(BA.编译、编辑、连接、运营B.编辑、编译、连接、运营C.编译、运营、编辑、连接D.编辑、运营、编辑、连接5.以下标记符中不全是保存字的是(BA.ca s
2、efo rintB.defau 1 tthe nw h ileC.bo o 1cla s s1 o ngD.goto r e t ur nc har6.能作为C+程序的基本单位是()oA.字符B.语句C.函数D.源程序文献C7.程序中主函数的名字为(A )。A.mainB.MAINC.M a inD.任意标记符8.C+程序的基本模块为(D)oA.表达式B.标记符C.语句D.函数9.可用作C+语言用户标记符的一组标记符是(B )。A.vo i dB.a 3 b 3C.f o rD.2 ad e f ine_ 1 2 3-a b cD O+W O R DY NC a s es ize o f1 o
3、.存储以下数据,占用存储字节最多的是(D )。A.0 B.O C.0 D.0.01 1 .程序运营中需要从键盘上输入多于一个数据时,各数据之间应使用(D )符号作为分隔符。A.空格或逗号 B.逗号或回车 C.逗号或分号 D.空格或回车1 2 .设“int a=1 2;”,则执行完语句a+=a*a;后,a的值是(C )。A.1 2 B.1 4 4 C.1 5 6 D.2 8 81 3 .假设在程序中a、b、c均被定义成整型,所赋的值都大于1,则下列能对的表达代数式一的表达式是(D )。abcA.1.0/a*b*c B.l/(a*b*c)C.1/a/b /(f l o a t)c D.1.0/a/
4、b/1 4 .设 int a =1 5,b =2 6;”,则”c。u t 0&x=1 0的 相 反表达式为(A )。A.x 1 0 B.x 1 0C.x=0|x 0&x 1 01 7.x 0|y=5的相反表达式为(B )。A.x=0|y!=5B.x 0 I|y!=5I).x 0&y=51 8 .设 x 和 y 均为b o o l 量,则 x&y 为真的条件是(A )。A.它们均为真 B.其中一个为真C.它们均为假 D.其中一个为假1 9 .设 x 和 y 均为b o o l 量,则 x|y 为假的条件是(C )。A.它们均为真 B.其中一个为真C.它们均为假 D.其中一个为假2 0 .字符串“
5、2+6=1 2 2 的长度为(B )。A.6 B.7 C.8 D.92 1.假 定 下 列 x 和 y 均 为 int型变量,则不对的的赋值为(B )。A.x+=y+B.x+=y+C.x=+y D.+x=+y22.下列的符号常量定义中,错误的定义是(C )。A.c o ns t M=1 0;B.c o nst int M=2 0 ;C.c o ns t c h a r c h;D.c o nst b o o l ma r k=true;2 3 .循环语句“for(i n t i =0;i n;i+)c o ut i *i z 中循环体执行的次数为(C )。B.n-1D.n+12 4 .在下面循
6、环语句中循环体执行的次数为(f o r(i nt i=0;i n/2)b re a k;A.n/2B.n/2+1n/2-1D.n-12 5 .在下面循环语句中内层循环体S语句的执行总次数为(D )。f o r(int i=0;i n;i+)f o r(int j=i;j n;j+)S ;A.n2 B.(n+1)/2 C.n(n-l)/2 D.n(n+l)/226.在下面循环语句中循环体执行的次数为(C )。i nt i=0,s=0 ;wh il e(s 2 0)i+;s+=i;A.4 B.5 C.6 D.72 7 .在下面循环语句中循环体执行的次数为(A )oi n t i=0;d o i+;
7、wh i l e(i*i 1 0);A.4 B.3 C.5 D.22 8.当解决特定问题时的循环次数已知时,通常采用(A )来解决。A.fo r循环 B.w h i 1 e 循环 C.d o循环 D.s w i t c h语句2 9.循环体至少被执行一次的语句为(C )oA.f o r循环 B.w hi l e循环 C.d o循环 D.任一种循环3 0 .s w i t c h语句可以改写为(B )语句。A.fo r B.i f C.d o D.w hi 1 e3 1 .d o 语句可以改写为(D )语句。A.复合 B.i f C.s w i t c h D.w hi l e3 2.在下面的一
8、维数组定义中,哪一个有语法错误。(C )A.i n t a =1,2,3 ;B.i n t a 1 0 =0 ;C.i n t a ;D.i n t a 5;3 3 .在下面的字符数组定义中,哪一个有语法错误。(D )。A.c har a 20=,a b c d e f g,z;B.c har a 二 x +y =5 5.;C.c har a 1 5 ;D.c h ar a 1 0 =z 5 r;3 4 .在下面的二维数组定义中,对的的是(C )。A.i n t a 5 ;B.i n t a 5;C.i n t a 3 =1,3,5,2 ;D.i n t a (1 0);3 5.假定一个二维数
9、组的定义语句为“i n t a 3 4 =3,4 ,2,8,6 ;,则 元 素 a l 2 的值为(C )。A.2 B.4 C.6 D.83 6.假定一个二维数组的定义语句为“i n t a 3 4 =3,4 ,2,8,6 ;,则元素a的值为(A )。A.0 B.4 C.8 D.63 7 .若定义了函数d o u b 1 e*f u n c t i o n (),则函数fu n c t i。n的返回值为(B )。A.实数型 B.实数的地址 C.指向函数的指针 D.函数的地址3 8.以下说法中对的的是(B )。A.C +程序总是从第一个定义的函数开始执行B.C +程序总是从ma i n函数开始执
10、行C.C+函数必须有返回值,否则不能使用函数D.C+程序中有调用关系的所有函数必须放在同一个程序文献中3 9.以下叙述中不对的的是(C )oA.在一个函数中,可以有多条ret u r n 语句B.函数的定义不能嵌套,但函数的调用可以嵌套C.函数必须有返回值D.不同的函数中可以使用相同名字的变量4 0 .函数重载是指(A )。A.两个或两个以上的函数取相同的函数名,但形参的个数或类型不同B.两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同C.两个以上的函数名字不同,但形参的个数或类型相同D.两个以上的函数取相同的函数名,并且函数的返回类型相同4 1 .以下关于函数模板叙述对的
11、的是(C )。A.函数模板也是一个具体类型的函数B.函数模板的类型参数与函数的参数是同一个概念C.通过使用不同的类型参数,函数模板可以生成不同类型的函数D.用函数模板定义的函数没有类型42.下 列(C )的调用方式是引用调用。A.形参和实参都是变量 B.形参是指针,实参是地址值C.形参是引用,实参是变量 D.形参是变量,实参是地址值4 3.为了提高程序的运营速度,可将不太复杂的功能用函数实现,此函数应选择(A )。A.内 联 函 数B.重 载 函 数C.递归函数 D.函数模板44.函数原型语句对的的是(B )。A.i n t F u n c t i o n(v o i d a);C.i n t
12、 F u n c t i o n (a);B.v o i d F u n c t i o n (i n t);D.v o i d i n t (d o u b l e a);)决定的。B.该函数定义时的类型D.系统根据结果r e t u rn (p x 1 );B.将字符串x连接到字符串p后面D.将字符串x反向存放(e x p 3,e x p 4,e x p 5)中所含实参的个数为4 D.54 5.C+中函数返回值的类型是由(BA.r e t u rn语句中表达式的类型C.调用函数时的调用语句4 6.以下函数的返回结果是(A )。i n t fu n c t i o n (c har*x )c
13、 h a r*p=x;w hi l e(*p+);A.求字符串的长度C.将字符串x复制到字符串p中4 7.函数调用 f u n c(e x p 1 ,e x p 2),B )个。A.1 B.2 C.48.设有如下函数定义i n t f(c har*s)c ha r*p =s ;w h i 1 e(*p!=0 )p +;ret ur n(p-s );)在主函数中用 0 1 1 1 (0。1)调用上述函数,则输出结果为(B )。A.3 B.4 C.5 D.649.以下对的的函数原型语句是(C )。A.d o u b l e fu n(i n t x,i n t y )B.d o u b 1 e f
14、u n (i n t x;i n t y)C.d o u b l e fu n(i n t,i n t);D.d o u b l e fu n (i n t x,y);5 0.以下对的的说法是(B )。A.用户调用标准库函数前,必须重新定义B.用户可以重新定义标准库函数,若如此,该函数将失去原有含义C.系统不允许用户重新定义标准库函数D.用户调用标准库函数前,不必使用预编译命令将该函数所在文献涉及到用户源文献中5 1.函数调用不可以(D )。A.出现在一个表达式中B.出现在执行语句中C.作为一个函数的实参D.作为一个函数的形参5 2.以下对的的描述是(B )。A.函数的定义可以嵌套,函数的调用
15、不可以嵌套B.函数的定义不可以嵌套,函数的调用可以嵌套C.函数的定义和函数的调用均可以嵌套D.函数的定义和函数的调用均不可以嵌套53.若用数组名作为函数调用的实参,传递给形参的是(A).A.数组的首地址 B.数组中第一个元素的值C.数组所有元素的值 D.数组元素的个数54.以下错误的描述是(D )。A.被调用函数中可以不用r e t u r n 语句B.被调用函数中可以用多个r e t u r n 语句C.被调用函数中,假如有返回值,就一定要有r e tu rn 语句D.被调用函数中,一个retu rn 语句可返回多个值给调用函数55.以下对的的描述是(C)。A.不允许设立参数的默认值B.设立
16、参数的默认值只能在定义函数时设立C.设立参数的默认值时,应当设立右边的参数D.设立参数的默认值时,应当所有参数都设立56.采用重载函数的目的是(D)。A.实现共享 B.减少空间C.提高速度 D.使用方便,提高可读性5 7 .将两个字符串连接起来组成一个字符串时,选 用(C)函数。A.st r len()B.s t r c ap()C.st r ca t()D.s t rcmp()58.以下叙述中对的的是(B)。A.使用#define可认为常量定义一个名字,该名字在程序中可以再赋此外的值B.使用const定义的常量名有类型之分,其值在程序运营时是不可改变的C.在程序中使用内联函数使程序的可读性变
17、差D.在定义函数时可以在形参表的任何位置给出缺省形参值5 9.下面的标记符中,(C)是文献级作用域。A.函数形参 B.语 句 标 号 C.外部静态类标记符D.自动类标记符6 0 .以下叙述不对的的是(D )。A.宏替换不占用运营时间 B.宏名无类型C.宏替换只是字符替换 D.宏名必须用大写字母表达6 1 .C+语言的编译系统对宏命令的解决是(D )。A.在程序运营时进行B.在程序连接时进行C.和 1 C+程序的其它语句同时进行编译D .在对源程序中其它成分正式编译之前进行6 2 .当#i n c l u d e 后面的文献名用双引号括起来时,寻找被包含文献的方式是(B )。A.直接按系统设定的
18、标准方式搜索目录B.先在源程序所在目录搜索,再按系统设定的标准方式搜索目录C.仅仅搜索源程序所在目录D.搜索当前逻辑盘上的所有目录6 3.当#i n c l u d e 后面的文献名用尖括号括起来时,寻找被包含文献的方式是(A )。A.直接按系统设定的标准方式搜索目录B.先在源程序所在目录搜索,再按系统设定的标准方式搜索目录C.仅仅搜索源程序所在目录D.搜索当前逻辑盘上的所有目录6 4 .在下面存储类中,(C )对象的可见性与生存期不一致。A.外部类 B.自动类 C.内部静态类 D.寄存器类6 5 .在下面存储类中,(A )的对象不是局部变量。A.外部静态类 B.自动类 C.函数形参 D.寄存
19、器类6 6.关于局部变量,下面说法对的的是(C )。A.定义该变量的程序文献中的函数都可以访问B.定义该变量的函数中的定义处以下的任何语句都可以访问C.定义该变量的复合语句中的定义处以下的任何语句都可以访问D.定义该变量的函数中的定义处以上的任何语句都可以访问6 7 .文献包含命令中被包含的文献的扩展名(C )oA.必须是 h B.不能是.h C.可以是.h或.c p p D.必 须 是.cP P6 8 .预解决命令在程序中都是以(B )符号开头的。A.*B.#C.&D.69 .设 arr a y 为一个数组,则表达式 s iz e of (array)/s i z e of (a r ray
20、 0)的结果为(B )oA.ar r a y 数组首地址B.arr a y 数组中元素个数C.ar r a y 数组中每个元素所占的字节数D.arr a y数组占的总字节数7 0.用 n e w 运算符创建一个含10个元素的一维整型数组的对的语句是(C )。A.int*p=ne w a 1 0;B.i nt *p=n e w f 1 o at 10;C.in t *p=ne w in t 10;D.int *p二 ne w int 1 0=l,2,3,4,57 1.下列给字符数组赋初值时,对的的是(A )。A.c h ar s 1 口=ab c d e f”;B.c h a r s 2 4=“
21、a b e d”;C.c h a r s 323=a b e,x y z ;D.c h a r s 4 4 =a,x ,s ,t ;7 2.设有定义“s t a t i c int d at a 5 6;,设该数组在静态存储区中的起始地址为十进制的1 00,若每个int 型数占4 个字节,则数组元素d a t a2 3的地址为(D)。A.1 15 B.1 24 C.1 3 0 D.1607 3.假定变量m 定义为“int m=7;,则定义变量p 的对的语句为(B )。A.i n t p=&m;B.in t *p=&m;C.intD.int *p=m;7 4.假定k是一个d ou b le 类型
22、的变量,则关于变量p 的对的定义语句为(D)。A.d ou b 1 e p=&k;B.int *p&k;C.d ou b le&p=*k;D.c h ar*p=T h ank y o u!”;7 5.变 量 s的定义为 c h ar*s=H e l 1 o w o rid!”;”,要使变量p 指 向 s所指向的同一个字符串,则应选取(A )0A.c h ar*p=s;B.c h ar*p=&s ;C.c h a r *p;p=*s;D.c har*p;p=&s;7 6 .关于v oi d 指针,下列说法对的的是(C )A.vo i d指针就是未指向任何数据的指针B.v o i d 指针就是已定
23、义而未初始化的指针C.指向任何类型数据的指针可直接赋值给一个v oid 指针D.v o i d 指针值可直接赋给一个非v o i d 指针7 7 .假定一条定义语句为“int al 0,x,*p a=a;,若要把数组a 中下标为3 的元素值赋给x,则不对的的语句为(D)A.x=p a 3;B.x=*(a+3);C.x =a 3;D.x=*pa+3;7 8 .假定有定义“int b 10;in t *pb;”,则不对的的赋值语句为(D)。A.pb =b;B.p b=&b 0;C.*pb=ne w i n t;D.pb=b 5;7 9.假 定 p 是具有d ou b 1 e 类型的指针变量,则表达
24、式+p 使 p 的值(以字节为单位)增长(C )。A.1 B.4 C.s iz e o f (d ou b 1 e )D.s iz e of (p)8 0.假 定 p 指向的字符串为 s t ring”,则 c o u t p+3的输出结果为(C )。A.s t ring B.r i ng C.i n g D.i8 1.假定p 指向的字符串为s t ring”,若要输出这个字符串的地址值,则使用(I)。A.c ou t *p;B.c ou t p;C.c o u t&p;D.c ou t t it le,5W ang T a o);B .s t rc py (bo o k,t it 1e,W
25、ang T a o );C.s t r c py (*b o o k.t it 1 e ,5W ang Ta o 5,);D.s t r c py (*b o o k)-t i t ie,9,Wa n g Tao“);8 6.假定有s t ru c t B O O K c h ar t it le 4 0;f 1 o at p ric e;BOOK*bo o k;,则不对的的语句为(A )oA.B O O K *x=ne w b oo k ;B.B O O K x=C+P r og r a mmingz/,2 7 .0 ;C.B O O K *x 二ne w B O O K;D.B O O K
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 面向 对象 程序设计 复习题
限制150内