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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C++复习题库.docx

1、C+复习题库一、填空 第1题 运行程序后,输出结果 【1】【2】【3】 #include void main() int x(5);do switch(x%2)case 1:X-;break; case O:x+; break; X-;coutxO);答案:3 1 -1第2题 赋值运算符的结合性是由【1】 至【2】 答案:右 左第3题在C+语言结构化程序中,【1】是程序的基本组成单元;在C+语言的面向对象设计框架中,【2】是程序的基本组成单元。答案:函数 类4设i,j,k为int型变量,则执行完for(i=0,j=10;i=j;i+,j-)k=i+j;语句后,K的值为10第5题 C+语言的参数

2、传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取【1】方式。答案:传地址 传址第6题 给出以下程序的输出结果是 【1】 #includevoid main()int *v,b; v=&b; b=100; *v+=b; cout2)等价的表达式是【1】 答案:xx; i=1; for(;【1】;) if(x%i=0) couti; i+; 答案:i=x第16题 当方法有返回值,必须在该方法体内使用【1】语句.答案:return第17题 在C语言中的实型变量分为两种类型,它们是【单精度型】和【双精度型】.第18题 C+语言的参数传递机制包括传值和传地址两种,参数为

3、引用时采用的是【传地址方式。第19题 若s是int型变量,且s=6,则下面表达式的值为【1】.s%2+(s+1)%2 答案:1第20题 C+中任何一个数组的名字是一个【1】指针,该指针的值是该数组第一个数组元素的地址. 答案:常量第21题 C语言规定,可执行程序的开始执行点是【1】.答案:程序中的main()函数第22题 一个C源程序至少应包括一个【1】.答案:主函数(或:main函数)第23题 已知:char *s=hello;执行语句for(int i=0;*s+;i+);之后,变量i的结果是 (5) 第24题 若x和a均是int型变量,则执行表达式(1)后的x值为【1】,执行表达式(2)

4、后的x值为【2】. (1)x=(a=4,6*2) (2)x=a=4,6*2答案:12 4第25题 若变量y是变量x的引用,则对变量y的操作就是对变量【1】的操作.答案:x第26题 下面程序段的运行结果是【1】.for(a=1,i=-1;-1=i1;i+) a+; couta; couti;答案:-1第27题 若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为【1】.x%=(n%=2)答案:0第28题 若有定义:double x35;则x数组中行下标的下限为【1】,列下标的上限为【2】.答案:0 4第29题 下面程序的功能是计算1-3+5-7+-99+101的值

5、,请填空. #include main() int i,t=1,s=0; for(i=1;i=101;i+=2) 【1】; s=s+t; 【2】; coutch C:cinget(ch) D:ch=cin.get() 答案:C第13题 下面常数中不能作为常量的是( )A:0xA5 B:2.5e-2 C:3e2 D:0583 答案:D第14题 设有程序段t=0; while(printf(*) t+;if(t3) break; 则下面描述正确的是_B:其中循环控制表达式与0等价第15题 若有说明:int a34;则数组a中各元素_A:可在程序的运行阶段得到初值0 B:可在程序的编译阶段得到初值0

6、C:不能得到确定的初值 D:可在程序的编译或运行阶段得到初值0 答案:B第16题 当执行以下程序段时( A:循环体将执行一次)x=-1; do x=x*x; while(!x);第17题 如果一个函数无返回值,定义时它的函数类型应是(C).A:任意 B:int C:void D:无第18题 已知:int i,x33 = 1,2,3,4,5,6,7,8,9;则下面语句的输出结果【 】 。for(i=0;i3;i+) coutxi2-it; C:3 5 7第19题 下述关于break语句的描述中,【 C】是不正确的 A:break语句可用于循环体内,它将退出该重循环 B:break语句可用于开关语

7、句中,它将退出开关语句C:break语句可用于if体内,它将退出if语句 D:break语句在一个循环体内可以出现多次第20题 表达式9!=10的值为:【 】 A:非零值 B:true C:0 D:1答案:D第21题 在int a23=1,0,3,2;中a10的值是( 3 ) 第22题 下面程序段的运行结果是. A:1,2,0 a=1; b=2; c=2; while(abc) t=a; a=b; b=t; c-; coutabc;第23题 下面程序的输出是【3 】#include void main( )int a10=1,2,3,4,5,6,7,8,9,10,*p=a; cout*(p+2

8、); 第24题 以下选项中合法的字符常量是( )A:B B:010 C:68 D:D 答案:B第25题 下面程序段. for(t=1;tx; if(x0) continue;coutt;A:当x=0时什么也不输出 C:printf函数永远也不执行D:最多允许输出100个非负整数 答案:D第26题 C+程序的执行总是从哪里开始的? A:main函数第27题 已知a,b均被定义为double型,则表达式:b=1,a=b+5/2的值为:( 3.0 )第28题 C语言规定:在一个源程序中,main函数的位置_. D:必须在最后第29题 若有以下说明和语句,且0i10,则【 】是对数组元素的错误引用。i

9、nt a =1,2,3,4,5,6,7,8,9,0,*p,i; p=a;A:*(a+i) B:ap-a C:p+i D:*(&ai) 答案:C第30题 已知:int m=10;下列表示引用的方法中,【 】是正确的。A:int &x=m;B:int &y=10; C:int &z; D:float &t=&m;答案:A第31 合法的数组初始化语句是( ) A:char a = stringB:int a5 = 0,1,2,3,4,5C:int a = string D:char a = 0,1,2,3,4,5 答案:A第32题 在参数传递过程中,对形参和实参的要求是() A:函数定义时,形参一直

10、占用存储空间B:实参可以是常量、变量或表达式C:形参可以是常量、变量或表达式D:形参和实参类型和个数都可以不同 答案:B第33题 在int b3=1,3,2,4,5,6,0;中,b22的值为( 6 ).第34题以下不正确的说法是. C语言规定 A:实参可以是常量、变量或表达式答案:BB:形参可以是常量、变量或表达式C:实参可以为任意类型D:形参应与其对应的实参类型一致第35题 已知函数f的原型是:void f(int *x,long &y);则以下对函数f正确的调用语句是(其中a和b是实参)【 】A:f(a,b) B:f(&a,b) C:f(a,&b) D:f(&a,&b) 答案:B第36题

11、在int a23=1,0,3,2;中a10的值是( 3 ) 37 ( B:构造函数可以有返回值,也可以有参数,构造函数可以重载; )不是构造函数的特征.第38题以下程序的运行结果是【15 】。#includevoid main() int a=0,b=1,c=0,d=20; if(a) d-=10; else if(b) if(!c) d=15; else d=25 coutdendl;第39题下列四个选项中,均是C语言关键字的选项是_.B:switch typedef continue第40题 指针是指该变量的( B:地址 )第41题 下面描述正确的是_A:两个字符串所包含的字符个数相同时,

12、才能比较字符串B:字符个数多的字符串比字符个数少的字符串大C:字符串STOP 与STOP相等D:字符串That小于字符串The答案:D第42题 下面程序的输出结果是( A ).#includevoid main( ) int a33=1,2,3,4,5;int sum=0; for (int I=1;I3;I+) for(int j=0;j=I;j+) sum+=aIj; coutsumendl;A:12 B:14 C:15 D:13第43题 (1.0分) 题号:4182如果一个函数无返回值,定义时它的函数类型应是( B:int ).第44题 下面程序的运行结果是. #include main

13、() int a=1,b=10; do b-=a; a+; while(b-0); coutab;A:a=3,b=11 B:a=2,b=8 C:a=1,b=-1 D:a=4,b=9答案:B第45题 以下选项中不是正确的实型常量的是:( B )A:3.8E-1 B:0.4e 2 C:-43.5 D:243.43e-2第46题 已知学生记录描述为 D:s.birth.year=1984; s.birth.month=11;s.birth.day=11;第47题 若有说明:int a4=0,0;则下面不正确的叙述是_A:数组a的每个元素都可得到初值0 B:二维数组a的第一维大小为1C:因为二维数组a

14、中第二维大小的值除以初值个数的商为1,故数组a的行数为1D:只有元素a00和a01可得到初值0,其余元素均得不到初值0 答案:D第48题 若有说明:int i,j=7,*p;p=&i;则与i=j等价的语句是( )A:i=*p B:*p=*&j C:i=&j D:i=*p 答案:B第49题 以下选项中不是正确的实型常量的是:【 】A:3.8E-1 B:0.4e 2 C:-43.5 D:243.43e-2答案:B第50题 对两个数组a和b进行如下初始化 char a=ABCDEF; char b=A, B,C,D,E,F; 则以下叙述正确的是_ D:a数组比b数组长度数组有关试题一、填空 第1题

15、给出以下程序运行的结果【1】 #include void main( ) int a =1,2,3,4,5; int x, y, *p;p=&a0; x=*(p+2); y=*(p+4); cout*p x y; 答案: 1 3 5第2题 已知:char *s=hello;执行语句for(int i=0;*s+;i+);之后,变量i的结果是 【5】 第3题 给出以下程序的输出结果是 【200】 #include void main() int *v,b; v=&b; b=100; *v+=b; coutb; 二、单项选择 第1题 若有以下语句,且0=k6,则正确表示数组元素地址的语句是【 】i

16、nt x=1,9,10,7,32,4,*ptr=x,k=1; A:x+ B:&ptr C:&ptrk D:&(x+1) 答案:C第2题 在int b3=1,3,2,4,5,6;中,b22的值为【 6】。第3题 设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是【 】 A:k=*p1+*p2; B:p2=k; C:p1=p2; D:k=*p1*(*p2); 答案:B第4题 下面程序的输出是【 3】#include void main( )int a10=1,2,3,4,5,6,7,8,9,10,*p=a; cout*(p+2);第5题 int *pa5;

17、的描述中,【 】是正确的。A:pa是一个指向数组的指针,所指向的数组是5个int型元素B:pa是一个指向某数组中的第5个元素的指针,该元素是int型变量C:pa5表示某个数组的第5个元素的值D:pa是一个具有5个元素的指针数组,每个元素是一个int型指针答案:D第6题下列关于指针的运算中,【 】是非法的。A:两个指针在一定条件下,可以进行相等或不等的运B:可以用一个空指针赋值给某个指针C:一个指针可以加上两个整数之和 D:两个指针在一定条件下,可以相加 答案:D第7题 若有说明:int i,j=7,*p;p=&i;则与i=j等价的语句是【 】A:i=*p; B:*p=*&j; C:i=&j D

18、:i=*p; 答案:B第8题 若有以下定义和语句,且0i10,则对数组元素地址的正确表示是【 】int a =1,2,3,4,5,6,7,8,9,0,*p,i; p=a;A:&(a+1) B:a+ C:*p D:&pi 答案:D第9题 在下述对字符数组的描述中,有错误的是【 】。A:字符数组可以存放字符串 B:字符数组中的字符串可以进行整体输入输出C:可以在赋值语句中通过赋值运算符=对字符数组整体赋值 D:字符数组的下标从0开始:C第10题 已知:int a=1,2,3,4,5,6,*p=a;下面表达式中其值为5的是【 】A:p+=3;*(p+);B:p+=5;*p+ ;C:p+=4;*+p;

19、D:p+=4;*p+;答案:D第11题 已知:int i,x33 = 1,2,3,4,5,6,7,8,9;则下面语句的输出结果【3 6 9 】 。for(i=0;i3;i+)coutxi2-it; 第12题 若有以下语句:char *p2=1234,5678则正确的叙述是【 】A:p数组的两个元素中各自存放了字符串1234和5678的首地址。第13题 已知:int m=10;下列表示引用的方法中,【 】是正确的。A:int &x=m; B:int &y=10; C:int &z; D:float &t=&m; 答案:A第14题 在C+语言中,二维数组元素在内存中的存放顺序是【 】。A:按行存放

20、第15题 合法的数组初始化语句是【 】。A:char a = string;B:int a5 = 0,1,2,3,4,5;C:int a = stringD:char a = 0,1,2,3,4,5;答案:A3、程序填空 4、第1题 题目:以下程序将数组中的数据按逆序存放。#include void main()int a12,i,j,t; for(i=0;iai; for(i=0;i6;i+) /*SPACE*/ 【t=ai;ai=a11-i;a11-i=t;】 /数组元素交换for(i=0;i12;i+) coutai;第2题 题目:程序读入10个整数,统计非负数个数,并计算非负数之和。#

21、include void main()/*SPACE* int i,a10,s=0,【count=0;】; for(i=0;iai;】 for(i = 0;i10;i+) if(ai 0) /*SPACE*/【continue;】 /负数跳过,不参与统计 count+; /*SPACE*/【s+=ai;】cout非负数的个数为:countendl; /*SPACE*/cout非负数之和为:【s】 endl;有关函数题型一、程序填空 第1题题目:找出数组当中的最大数#include/*SPACE*/int 【max】(int b,int n); void main()int arr10; /*SPACE*/ for(int i=0;iarri;/*SPACE*/ cout【max(arr,10)】endl; int max(int b,int n) int m=0; for(int i=0;im) m=bi;/*SPACE*/

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1