i--;
}while(i!
=0);
A.0 B.3C.1 D.无限
6.下列for循环语句的循环次数是( B )。
for(inti(0),j(5);i=3;i++,j--);
A.3 B.无限C.5 D.0
7.下列while循环语句的循环次数是( A )。
while(inti(0)) i--;
A.0 B.1C.2 D.无限
8.下列程序段执行后,j值是( B )。
for(inti(0),j(0);i<10;i++)
if(i) j++;
A.0 B.9C.10 D.无限
9.已知:
typedefcharCH;下列描述中,正确的是( A )。
A.使用CH定义的变量是char型变量
B.使用CH定义的是一个字符常量
C.使用CH定义的变量其类型不确定
D.使用CH定义的是一个字符串
10.下列关于预处理命令的描述中,错误的是( D )。
A.预处理命令最左边的标识符是#
B.预处理命令是在编译前处理的
C.宏定义命令可以定义符号常量
D.文件包含命令只能包含.h文件
1.下列关于定义一个指向double型变量的指针,正确的是( B )。
A.inta(5);double*pd=a; B.doubled(2.5),*pd=&d;
C.doubled(2.5),*pd=d; D.doublea(2.5),pd=d;
2.下列关于创建一个int型变量的引用,正确的是(A )。
A.inta(3),&ra=a; B.inta(3),&ra=&a;
C.doubled(3.1);int&rd=d; D.inta(3),ra=a;
3.下列关于指针概念的描述中,错误的是(B )。
A.指针中存放的是某变量或对象的地址值
B.指针的类型是它所存放的数值的类型
C.指针是变量,它也具有一个内存地址值
D.指针的值(非常量指针)是可以改变的
4.下列关于引用概念的描述中,错误的是( A )。
A.引用是变量,它具有值和地址值
B.引用不可以作数组元素
C.引用是变量的别名
D.创建引用时必须进行初始化
5.已知:
inta[5],*p=a;则与++*p相同的是( D )。
A.*++p B.a[0]C.*p++ D.++a[0]
6.已知:
inta[]={1,2,3,4,5},*p=a;在下列数组元素地址的表示中,正确的是( C )。
A.&(a+1) B.&(p+1)C.&p[2] D.*p++
7.已知:
inta[3][4],(*p)[4];下列赋值表达式中,正确的是( A )。
A.p=a+2 B.p=a[1]C.p=*a D.p=*a+2
8.已知:
intb[3][5]={0};下列数组元素值的表示中,错误的是( D )。
A.**(b+1) B.(*(b+1))[2]C.*(*(b+1)+1) D.*(b+2)
9.已知:
inta=1,b=2,*p[2];下列表达式中正确的是( C )。
A.p=&a B.p=&bC.p[0]=&a,p[1]=&b D.p[]={&a,&b};
10.已知:
inta(5),&ra=a;下列描述中,错误的是( D )。
A.ra是变量a的引用,即为变量的别名
B.ra的值为5
C.ra的地址值为&a
D.改变ra的值为10,变量a值仍为5
1.当一个函数没有返回值时,该函数类型应说明为( A )。
A.void B.intC.无 D.任意
2.下列关于设置函数默认的参数值的描述中,错误的是( C )。
A.可对函数的部分参数或全部参数设置默认值
B.在有函数说明时,默认值应设置在函数说明时,而不是定义时
C.设置函数默认参数值时,只可用常量不可用含有变量的表达式
D.设置函数参数默认值应从右向左设置
3.下列关于被调用函数中return语句的描述中,错误的是( D )。
A.一个函数中可以有多条return语句
B.return语句具有返回程序控制权的作用
C.函数通过return语句返回值时仅有一个
D.一个函数中有且仅有一条return语句
4.函数返回值的类型是由( B )决定的。
A.调用该函数的调用函数的类型
B.定义该函数时所指定的类型
C.return语句中表达式的类型
D.接收函数返回值的变量或对象的类型
5.下列设置函数参数默认值的说明语句中,错误的是( C )。
A.intfun(intx,inty=10); B.intfun(intx=5,int=10);
C.intfun(intx=5,inty); D.intfun(intx,inty=a+b);
(其中,a和b是已定义过具有有效值的变量)
6.下列选择重载函数的不同实现的判断条件中,错误的是( D )。
A.参数类型不同 B.参数个数不同
C.参数顺序不同 D.函数返回值不同
7.已知:
intfun(int&a),m=10;下列调用fum()函数的语句中,正确的是( C )。
A.fun(&m); B.fun(m*2);C.fun(m); D.fun(m++);
8.在函数的引用调用中,函数的实参和形参分别应是( C )。
A.变量值和变量 B.地址值和指针
C.变量名和引用 D.地址值和引用
9.在函数的传址调用中,函数的实参和形参分别应是( B )。
A.变量值和变量 B.地址值和指针
C.变量名和引用 D.地址值和引用
10.说明一个内联函数时,应加关键字是( A )。
A.inline B.staticC.void D.extern
1、C++对C语言作了很多改进,下列描述中(D )使得C语言发生了质变,从面向过程变成了面向对象。
A、增加了一些新的运算符;B、允许函数重载,并允许设置缺省参数;
C、规定函数说明必须用原型;D、引进了类和对象的概念;
2、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是(A)。
A.类B.对象C.函数体D.数据块
3、关于new运算符的下列描述中,(D )是错误的。
A、它可以用来动态创建对象和对象数组;
B、使用它创建的对象或对象数组可以使用运算符delete删除;
C、使用它创建对象时要调用构造函数;
D、使用它创建对象数组时必须指定初始值;
4、(D )不是构造函数的特征。
A、构造函数的函数名与类名相同; B、构造函数可以重载;
C、构造函数可以设置缺省参数; D、构造函数必须指定类型说明。
5、假定一个类的构造函数为B(intx,inty){a=x--;b=a*y--;},则执行Bx(3,5);语句后,x.a和x.b的值分别为(C)
A、3和5B、5和3C、3和15D、20和5
6、关于成员函数特征的下列描述中,(A )是错误的。
A、成员函数一定是内联函数;B、成员函数可以重载;
C、成员函数可以设置缺省参数值; D、成员函数可以是静态的;
7、在公有继承的情况下,基类成员在派生类中的访问权限(B )。
A.受限制B.保持不变C.受保护D.不受保护
8、友元的作用是( D)。
A、提高程序的运用效率; B、加强类的封装性;
C、实现数据的隐藏性; D、增加成员函数的种类;
9、在C++中,关于下列设置缺省参数值的描述中,( B)是正确的。
A、不允许设置缺省参数值;
B、在指定了缺省值的参数右边,不能出现没有指定缺省值的参数;
C、只能在函数的定义性声明中指定参数的缺省值;
D、设置缺省参数值时,必须全部都设置;
10、关于delete运算符的下列描述中,( B)是错误的。
A、它必须用于new返回的指针;
B、使用它删除对象时要调用析构函数;
C、对一个指针可以使用多次该运算符;
D、指针名前只有一对方括号符号,不管所删除数组的维数。
11、constint*p说明不能修改( B)。
A、p指针; B、p指针指向的变量;
C、p指针指向的数据类型;D、上述A、B、C三者;
12、当需要打开A盘上的以xxk.dat文件用于输入时,则定义文件流对象的语句为(A)。
A.fstreamfin(“A:
xxk.dat”,1)B.ifstreamfin(“A:
xxk.dat”,ios:
:
nocreate)
C.ofstreamfin(“A:
xxk.dat”)D.ifstreamfin(“A:
xxk.dat”,ios:
:
app)
13、派生类的对象对它的基类成员中(A )是可以访问的。
A、公有继承的公有成员; B、公有继承的私有成员;
C、公有继承的保护成员;D、私有继承的公有成员;
14、假定一个字符串的长度为n,则定义存储该字符串的字符数组的长度至少为(C)。
A.n-1B.nC.n+1D.n+2
15、在inta=3;*p=&a;中,*p的值是(D )。
A、变量a的地址值B、无意义C、变量p的地址值D、3
16、下列常量中,(D)不是字符常量。
A、’\005’B、’\n’C、’c’D、“a”
1.由C++目标文件连接而成的可执行文件的缺省扩展名为 B 。
A. cpp B. exeC. obj D. lik
2.在下面的一维数组定义中,哪一个有语法错误。
C
A. int a[]={1,2,3} B. int a[10]={0}
C. int a[] D. int a[5]
3.在下面的函数声明中,存在着语法错误的是 D 。
A. void BC(int a,int) B. void BD(int,int)
C. void BE(int,int=5) D. int BF(int x;int y)
4.假定AB为一个类,则该类的拷贝构造函数的声明语句为 C 。
A. AB&(AB x) B. AB(AB x)
C. AB(AB &) D. AB(AB*x)
5.对于结构中定义的成员,其隐含访问权限为 A 。
A. public B. protected
C. private D. static
6.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为 D 。
A. ios:
:
in B. ios:
:
out
C. ios:
:
int|ios:
:
out D. 没有
1、在每个C++程序中都必须包含有这样一个函数,该函数的函数名为 A 。
A.main B.MAIN C.name D.function
2、设x和y均为bool量,则x&&y为真的条件是 A 。
A.它们均为真 B.其中一个为真 C.它们均为假 D.其中一个为假
3、下面的哪个保留字不能作为函数的返回类型?
C 。
A.void B.int C.new D.long
4、假定a为一个整型数组名,则元素a[4]的字节地址为 C 。
A.a+4 B.a+8 C.a+16 D.a+32
5、假定AB为一个类,则执行“AB a(4),b[3],*p[2];”语句时,自动调用该类构造函数的次数为 B 。
A.3 B.4 C.6 D.9
6、假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为:
B 。
A. AB operator+(AB &a,AB &b)B. AB operator+(AB &a)C. operator+(AB a) D. AB &operator+()