C++复习题库Word文件下载.docx
- 文档编号:15917061
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:46
- 大小:44.27KB
C++复习题库Word文件下载.docx
《C++复习题库Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++复习题库Word文件下载.docx(46页珍藏版)》请在冰豆网上搜索。
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来
8.下面程序段(C)。
x=3;
do
{y=x--;
if(!
y){cout<
<
”x”;
continue;
cout<
”#”;
while(1<
=x<
=2);
(1<
=x)=1,0bool型
A.将输出##B.将输出##*
C.是死循环D.含有不合法的控制表达式
9.以下正确的说法是(D)。
A.用户若需要调用标准函数,调用前必须重新定义
B.用户可以直接调用所有标准库函数
C.用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数
D.用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数
10.在参数传递过程中,对形参和实参的要求是(B)。
A.函数定义时,形参一直占用存储空间
B.实参可以是常量、变量或表达式
C.形参可以是常量、变量或表达式
D.形参和实参类型和个数都可以不同
11.对数组名作函数的参数,下面描述正确的是(B)。
A.数组名作函数的参数,调用时将实参数组复制给形参数组
B.数组名作函数的参数,主调函数和被调函数共用一段存储单元
C.数组名作参数时,形参定义的数组长度不能省略
D.数组名作参数,不能改变主调函数中的数据
12.若有语句inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
则(B)不是对a数组元素的正确引用(其中0≤i<
10)。
A.p[i] B.*(*(a+i))C.a[p-a]D.*(&
a[i])
13.以下程序的输出结果是(B)。
#include<
iostream.h>
voidmain()
{chars[]="
12134211"
*p;
intv1=0,v2=0,v3=0,v4=0;
v1v2v3v4
for(p=s;
*p;
p++)2434
switch(*p)
{
case'
1'
:
v1++;
3'
v3++;
2'
v2++;
default:
v4++;
}
cout<
v1<
"
"
v2<
v3<
v4<
endl;
A.4,2,1,1B.4,7,5,8C.7,3,2,1D.8,8,8,8
14.下列声明结构体变量错误的是(C)。
A.structstudentB.structstudent
{ intno;
{intno;
charname[16];
charname[16];
}st1,st2;
};
structstudentst1,st2;
C.structstudentD.structstudent
{intno;
};
structst1,st2;
studentst1,st2;
15.对类的构造函数和析构函数描述正确的是(A)。
A.构造函数可以重载,析构函数不能重载
B.构造函数不能重载,析构函数可以重载
C.构造函数可以重载,析构函数也可以重载
D.构造函数不能重载,析构函数也不能重载
16.下面对于友元函数描述正确的是(C)。
A.友元函数的实现必须在类的内部定义B.友元函数是类的成员
C.友元函数破坏了类的封装性和隐藏性D.友元函数不能访问类的私有成员
17.派生类的对象对它的基类成员中(A)是可以访问的。
A.公有继承的公有成员B.公有继承的私有成员
C.公有继承的保护成员D.私有继承的公有成员
18.C++类体系中,不能被派生类继承的有(A)。
A.构造函数B.虚函数C.静态成员函数D.赋值操作函数
19.以下(D)成员函数表示虚函数。
A.virtualintvf(int);
B.voidvf(int)=0;
C.virtualvoidvf()=0;
D.virtualvoidvf(int){};
20.下面对静态数据成员的描述中,正确的是(B)。
A.静态数据成员可以在类体内进行初始化
B.静态数据成员不可以在类体内进行初始化
C.静态数据成员不能受private控制符的作用
D.静态数据成员可以直接用类名调用?
?
21.继承具有(B),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。
A.规律性B.传递性C.重复性D.多样性
22.若有以下定义,则释放指针所指内存空间的操作是(C)。
floatr=newsfloat[10];
A.deleter;
B.delete*r;
C.delete[]r;
D.deleter[];
23.若有以下定义,则对字符串的操作错误的是(C)。
chars[10]=”Program”,t[]=”test”;
A.strcpy(s,t);
B.cout<
strlen(s);
C.strcat(“this”,t);
D.cin>
>
t;
24.在if语句中的表达式是(D)。
A.只能是表达式B.只能是关系表达式和逻辑表达式
C.只能是逻辑表达式D.可以是任意表达式
25.在用关键字class定义的类中,以下叙述正确的是(A)。
A.
在类中,不作特别说明的数据成员均为私有类型
B.
在类中,不作特别说明的数据成员均为公有类型
C.
类成员的定义必须是成员变量定义在前,成员函数定义在后
D.
类的成员定义必须放在类定义体内部
参考答案:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
B
C
D
A
16
17
18
19
20
21
22
23
24
25
公共基础知识
一、选择题
(1)下列关于栈的叙述正确的是D
A)栈是非线性结构 B)栈是一种树状结构
C)栈具有先进先出的特征 D)栈具有后进先出的特征
(2)结构化程序设计所规定的三种基本控制结构是C
A)输入、处理、输出 B)树形、网形、环形
C)顺序、选择、循环 D)主程序、子程序、函数
(3)结构化程序设计的一种基本方法是D
A)筛选法 B)递归法 C)归纳法 D)逐步求精法
(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是:
A)选择 B)投影 C)连接 D)并
一:
选择题:
(1)D
(2)C (3)D (4)B
C++语言程序设计
(1)C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是(B)
A)面向过程 B)面向对象 C)安全性 D)复用性
(2)C++语言的跳转语句中,对于break和continue说法正确的是(B)
A)break语句只应用与循环体中
B)continue语句只应用与循环体中
C)break是无条件跳转语句,continue不是
D)break和continue的跳转范围不够明确,容易产生问题
(3)for(intx=0,y=o;
!
x&
&
y<
=5;
y++)语句执行循环的次数是(C)
A)0 B)5 C)6 D)无次数
(4)考虑函数原型voidtest(inta,intb=7,char="
*"
),下面的函数调用中,属于不合法调用的是(C)
A)test(5);
B)test(5,8);
C)test(6,"
#"
)D)test(0,0."
);
(5)下面有关重载函数的说法中正确的是(C)
A)重载函数必须具有不同的返回值类型;
B)重载函数形参个数必须不同;
C)重载函数必须有不同的形参列表 D)重载函数名可以不同;
(6)下列关于构造函数的描述中,错误的是(D)
A)构造函数可以设置默认参数;
B)构造函数在定义类对象时自动执行
C)构造函数可以是内联函数;
D)构造函数不可以重载
(7)下面描述中,表达错误的是(B)
A)公有继承时基类中的public成员在派生类中仍是public的
B)公有继承是基类中的private成员在派生类中仍是private的
C)公有继承时基类中的protected成员在派生类中仍是protected的
D)私有继承时基类中的public成员在派生类中是private的
(8)应在下列程序划线处填入的正确语句是(C)
#include
classBase
{ public:
voidfun(){cout<
Base:
fun"
};
classDerived:
publicBase
{ voidfun()
{_____________file:
//显示调用基类的函数fun()
cout<
Derived:
}
A)fun();
B)Base.fun();
C)Base:
fun();
D)Base->
(9)有如下程序:
#include
classBASE{
charc;
public:
BASE(charn):
c(n){}
virtual~BASE(){cout<
c};
classDERIVED:
publicBASE{
DERIVED(charn):
BASE(n+1),c(n){}
~DERIVED(){cout<
i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 复习 题库