C++复习题库.docx
- 文档编号:3693526
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:12
- 大小:26.10KB
C++复习题库.docx
《C++复习题库.docx》由会员分享,可在线阅读,更多相关《C++复习题库.docx(12页珍藏版)》请在冰豆网上搜索。
C++复习题库
一、填空
第1题运行程序后,输出结果【1】【2】【3】#include
{intx(5);do{switch(x%2){case1:
X--;break;caseO:
x++;break;}
X--;cout<
31-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++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取【1】方式。
答案:
传地址传址
第6题给出以下程序的输出结果是【1】#include
{int*v,b;v=&b;b=100;*v+=b;cout<
200
第7题C++中封装性、继承性和【1】是面向对象程序设计的三个主要性质。
答案:
多态性
第8题继承有方式有公有继承、私有继承和【1】三种。
答案:
保护继承保护
第9题类中成员默认的访问权限是【1】的.答案:
私有private
第10题与!
(x>2)等价的表达式是【1】答案:
x<=2
第12题使用关键字inline说明的函数称为【1】函数,
具有相同函数名但具有不同实现的函数称为【2】函数。
答案:
内联重载
第13题在C语言中,二维数组元素在内存中的存放顺序是【1】.答案:
按行主顺序存放
第14题若有定义:
inta[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]得到的初值是【1】,a[2][1]得到的初值是【2】.答案:
06
第15题下面程序段是找出整数的所有因子,请填空.cin>>x;i=1;for(;【1】;)
{if(x%i==0)cout<
i<=x
第16题当方法有返回值,必须在该方法体内使用【1】语句.答案:
return
第17题在C语言中的实型变量分为两种类型,它们是【单精度型】和【双精度型】.
第18题C++语言的参数传递机制包括传值和传地址两种,参数为引用时采用的是【传地址方式。
第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(inti=0;*s++;i++);"之后,变量i的结果是(5)
第24题若x和a均是int型变量,则执行表达式
(1)后的x值为【1】,执行表达式
(2)后的x值为【2】.
(1)x=(a=4,6*2)
(2)x=a=4,6*2答案:
124
第25题若变量y是变量x的引用,则对变量y的操作就是对变量【1】的操作.答案:
x
第26题下面程序段的运行结果是【1】.for(a=1,i=-1;-1<=i<1;i++)
{a++;cout< -1 第27题若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为【1】.x%=(n%=2)答案: 0 第28题若有定义: doublex[3][5];则x数组中行下标的下限为【1】,列下标的上限为【2】. 答案: 04 第29题下面程序的功能是计算1-3+5-7+…-99+101的值,请填空. #include for(i=1;i<=101;i+=2){【1】;s=s+t;【2】;}cout< t=t*it=-t/i 第30题若a为double类型的变量,表达式a=1,a+5,a++的值为【1】答案: 1.0 1.00 2、判断 第1题如果一个函数在其函数体内直接或间接的调用了自己,该函数 称为递归函数。 答案: Y 第2题开关语句不可以嵌套,在开关语句的语句序列中不能再有开关语句。 答案: N 第3题while循环语句的循环体至少执行一次。 答案: N 第4题对于数值类型数组,如果给定的数值不够,则没有指定数值的元素将初始化为'0\';答Y 第5题设置了参数默认值后,调用函数时对应实参就必须省略.答案: N 第6题循环是可以嵌套的,一个循环体内可以包含另一种循环语句.答案: Y 第7题C++引入内联函数的原因是用它来取代C中的预处理宏函数。 答案: Y 第8题continue语句只能出现在循环体中.答案: Y 第9题标识符规定大小写字母没有区别。 答案: N 第10题构造函数和析构函数都不能重载.答案: N 第11题开关语句中的default关键字,只能放在该语句的末尾,不能放在开头或中间.答案: N 第12题C++语言和C语言都是面向对象的程序设计语言。 答案: N 第13题for循环中,循环变量的作用域是在该循环的循环体内.答案: N 第14题break语句可以出现在各种循环体中.答案: Y 第15题数组元素可以用下标表示,也可以用指针表示。 答案: Y 第16题switch语句中必须有break语句,否则无法退出switch语句.答案: N 第17题指针的类型是它所指向的变量或对象的类型。 答案: Y 第18题可以通过typedef增加新的数据类型。 答案: N 第19题编译系统所提供的系统函数都被定义在它所对应的头文件中.答案: Y 第20题continue语句只能出现在循环体中。 答案: Y 三、单项选择共50题(共计50分) 第1题以下符号中不能作为标识符的是: 【B】A: _256B: voidC: scanfD: Struct答案B 第2题C++程序的执行总是从哪里开始的? A: main函数B: 第一行C: 头文件D: 函数注答案: A 第3题合法的数组初始化语句是【】。 A: chara[]="string";B: inta[5]={0,1,2,3,4,5}C: inta[]="string" D: chara[]={0,1,2,3,4,5};答案: A 第4题下列for循环的循环体执行次数为【】for(inti(O),j(10);i=j=10;i++,j--)无限 第5题下列运算符中优先级最高的是: 【】A: ! B: %C: -=D: &&答案: A 第6题在intb[][3]={{1},{3,2},{4,5,6}};中,b[2][2]的值为【】。 A: 0B: 5C: 6D: 2答C 第7题以下正确的函数定义形式是____ A: doublefun(intx,inty)B: doublefun(intx;inty) C: doublefun(intx,inty);D: doublefun(intx,y);答案: A 8设有定义intx;floaty;,则10+x+y值的数据类型是A: intB: doubleC: floatD: 不确定C 第9题C++语言对C语言进行了很多改进,C++语言相对于C语言的最根本的变化是【】 A: 增加了一些新的运算符B: 允许函数重载,并允许设置缺省参数 C: 规定函数说明符必须用原型D: 引进了类和对象的概念答案: D 第10题在下述对字符数组的描述中,有错误的是【】。 A: 字符数组可以存放字符串B: 字符数组中的字符串可以进行整体输入输出 C: 可以在赋值语句中通过赋值运算符"="对字符数组整体赋值D: 字符数组的下标从0开始: C 第11题关于函数返回值的的描述正确的是().A: 函数返回表达式的类型一定与函数的类型相同.B: 函数返回值的类型决定了返回值表达式的类型C: 当函数类型与返回值表达式类型不同,将对返回值表达式的值进行类型转换.D: 函数返回值类型就是返回值表达式类型.答案: C 第12题假设有定义charch;下列输入字符的方法不正确的是().A: cin.get(ch) B: cin>>chC: cin>>get(ch)D: ch=cin.get()答案: C 第13题下面常数中不能作为常量的是()A: 0xA5B: 2.5e-2C: 3e2D: 0583答案: D 第14题设有程序段t=0;while(printf("*")) {t++;if(t<3)break;}则下面描述正确的是____B: 其中循环控制表达式与'0'等价 第15题若有说明: inta[3][4];则数组a中各元素____ A: 可在程序的运行阶段得到初值0B: 可在程序的编译阶段得到初值0 C: 不能得到确定的初值D: 可在程序的编译或运行阶段得到初值0答案: B 第16题当执行以下程序段时(A: 循环体将执行一次)x=-1;do{x=x*x;}while(! x); 第17题如果一个函数无返回值,定义时它的函数类型应是(C).A: 任意B: intC: voidD: 无 第18题已知: inti,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果【】。 for(i=0;i<3;i++)cout< 357 第19题下述关于break语句的描述中,【C】是不正确的A: break语句可用于循环体内,它将退出该重循环B: break语句可用于开关语句中,它将退出开关语句 C: break语句可用于if体内,它将退出if语句D: break语句在一个循环体内可以出现多次 第20题表达式9! =10的值为: 【】A: 非零值B: trueC: 0D: 1答案: D 第21题在inta[2][3]={{1,0},{3,2}};中a[1][0]的值是(3) 第22题下面程序段的运行结果是.A: 1,2,0 a=1;b=2;c=2;while(a 第23题下面程序的输出是【3】#include {inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;cout<<*(p+2); } 第24题以下选项中合法的字符常量是()A: "B"B: '\010'C: 68D: D答案: B 第25题下面程序段.for(t=1;t<=100;t++){cin>>x;if(x<0)continue;cout< A: 当x<0时整个循环结束B: 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题若有以下说明和语句,且0 inta[]={1,2,3,4,5,6,7,8,9,0},*p,i;p=a; A: *(a+i)B: a[p-a]C: p+iD: *(&a[i])答案: C 第30题已知: intm=10;下列表示引用的方法中,【】是正确的。 A: int&x=m; B: int&y=10;C: int&z;D: float&t=&m;答案: A 第31合法的数组初始化语句是()A: chara[]="string"B: inta[5]={0,1,2,3,4,5} C: inta[]="string"D: chara[]={0,1,2,3,4,5}答案: A 第32题在参数传递过程中,对形参和实参的要求是()A: 函数定义时,形参一直占用存储空间 B: 实参可以是常量、变量或表达式C: 形参可以是常量、变量或表达式 D: 形参和实参类型和个数都可以不同答案: B 第33题在intb[][3]={{1},{3,2},{4,5,6},{0}};中,b[2][2]的值为(6). 第34题以下不正确的说法是.C语言规定A: 实参可以是常量、变量或表达式答案: B B: 形参可以是常量、变量或表达式C: 实参可以为任意类型D: 形参应与其对应的实参类型一致 第35题已知函数f的原型是: voidf(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题在inta[2][3]={{1,0},{3,2}};中a[1][0]的值是(3) 37(B: 构造函数可以有返回值,也可以有参数,构造函数可以重载;)不是构造函数的特征. 第38题以下程序的运行结果是【15】。 #include voidmain(){inta=0,b=1,c=0,d=20;if(a)d-=10;elseif(b) {if(! c)d=15;elsed=25}cout< 第39题下列四个选项中,均是C语言关键字的选项是____.B: switchtypedefcontinue 第40题指针是指该变量的(B: 地址) 第41题下面描述正确的是____ A: 两个字符串所包含的字符个数相同时,才能比较字符串B: 字符个数多的字符串比字符个数少的字符串大C: 字符串"STOP"与"STOP"相等D: 字符串"That"小于字符串"The"答案: D 第42题下面程序的输出结果是(A).#include voidmain(){inta[3][3]={{1,2},{3,4},{5}};intsum=0;for(intI=1;I<3;I++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 复习 题库