22秋《C++》作业2
试卷总分:100 得分:100
一、单选题 (共 10 道试题,共 40 分)
1.下列程序段的输出结果是( )。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j);cout<<k;
A.3
B.4
C.6
D.7
2.如不希望函数返回任何值,则可以将函数的返回值定义为( )
A.int
B.0
C.void
D.return
3.对于int *pa[5];的描述,正确的是( )。
A.pa是一个指向数组的指针,所指向的数组是5个int型元素
B.pa是一个指向某个数组中第5个元素的指针,该元素是int型变量
C.pa[5]表示某个数组的第5个元素的值
D.pa是一个具有5个元素的指针数组,每个元素是一个int型指针
4.有如下语句 int i=1; while(i<10); { i++; } 则程序执行时循环执行( )次。
A.0
B.8
C.9
D.10
5.假定一个类的构造函数为A(int aa,int bb) {a=aa--;b=a*bb;},则执行A x(4,5);语句后,x.a和x.b的值分别为( )。
A.3和15
B.4和20
C.5和4
D.20和5
6.int n=0; while(n=1)n++; while循环执行次数是( )。
A.0次
B.1次
C.不确定次
D.无限次
7.C++ 中不能用来组成循环结构的关键字是( )
A.for
B.while
C.switch
D.do
8.若有语句char a[]= "test";则数组a[]中共有( )个变量。
A.3
B.4
C.5
D.0
9.C++ 中不能用来组成循环结构的关键字是( )
A.for
B.while
C.switch
D.do
10.表达式中含有int、long和float型的变量,则运算时需要转换为( )类型。
A.int
B.long
C.float
D.double
二、多选题 (共 8 道试题,共 32 分)
11.下列关于数组初始化的说法正确的是( )
A.若对数组a定义:"static int x[10];",则数组元素值均为0
B."int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值为9
C.对于"int x[10];"它的元素初值是不确定的
D."int x[10]={1,2,3,4,5};"是不合法的,因为数组长度为10,而初始值仅有5个
12.下列描述中正确的是( )。
A.定义函数中指定的形参,在函数未调用时不占用内存空间。
B.实参应该是确定的值。
C.实参与形参的类型可以不同。
D.形参可以将函数运算后的值传递给实参。
13.已知x,y,z是整型变量,则下列选项中正确的是( )
A.if (x&&y) cout<<"x&&y"
B.if (x=y) cout<<"x=y"
C.if (x#y) cout<<"x#y"
D.if(x<>y) cout<<"x<>y"
14.当用public继承从基类派生一个类时,基类的( )成员可被派生类中的成员函数访问
A.protected
B.public
C.private
D.friend
15.下面数据结构中是线性结构的有( )。
A.链表
B.数组
C.图
D.栈
16.若有说明"int x=3, y[3][3];",则对y数组元素的非法引用是( )
A.y[0][x]
B.y[x][2]
C.y[2][1+1]
D.y[1][3-x]
17.以下叙述中不正确的是( )
A.函数中的形式参数是局部变量
B.在一个函数内的复合语句中定义的变量在本函数范围内有效
C.在一个函数内定义的变量只在本函数范围内有效
D.函数的形式参数不可以说明为register变量
18.已知x,y,z是整型变量,则下列选项中正确的是( )
A.if (x&&y) cout<<"x&&y"
B.if (x=y) cout<<"x=y"
C.if (x#y) cout<<"x#y"
D.if(x<>y) cout<<"x<>y"
三、判断题 (共 7 道试题,共 28 分)
19.在私有继承中,基类中所有成员对派生类都是不可见的。
20.C++中标识符内的大小写字母是没有区别的。
21.C++是一种以编译方式实现的高级语言。
22.C++语言中,函数的声明和函数的定义必须在同一个源文件内。
23.构造函数可以声明为虚函数。
24.C++中的函数都具有返回值。
25.C++是最开始提出类概念的语言
奥鹏,国开,广开,电大在线,各省平台,新疆一体化等平台学习
详情请咨询QQ : 3230981406或微信:aopopenfd777