一、单项选择题(每小题3分,共60分)(总分60.00)
|
|
1.
以下叙述中不正确的是(A )。
(3.00分)
|
|
A. 函数必须有返回值
|
B. 在一个函数中,可以有多条return语句
|
C. 函数的定义不能嵌套,但函数的调用可以嵌套
|
D. 不同的函数中可以使用相同名字的变量
|
|
|
2.
循环语句“for(int i=0; i<n; i++) cout<<i*i<<’ ’;”中循环体执行的次数为( C)。
(3.00分)
|
|
|
|
3. 可用作C++语言用户标识符的一组标识符是( )。(3.00分)
|
|
A. 2a DO sizeof
|
B. a3_b3 _123 YN
|
C. void define +WORD
|
D. for -abc Case
|
|
|
4. 存储以下数据,占用存储字节最多的是(C )。
(3.00分)
|
|
A. ‘0’
|
B. 0
|
C. 0.0
|
D. “0”
|
|
|
5.
设x是一个bool型的逻辑量,y的值为10,则表达式 x && y的值为(B )。
(3.00分)
|
|
A. 1
|
B. 与x值相同
|
C. 与x值相反
|
D. 0
|
|
|
6.
设x和y均为bool量,则x || y为假的条件是(B )。
(3.00分)
|
|
A. 其中一个为真
|
B. 它们均为假
|
C. 它们均为真
|
D. 其中一个为假
|
|
|
7.
下列的符号常量定义中,错误的定义是(B )。
(3.00分)
|
|
A. const int M=20;
|
B. const char ch;
|
C. const M=10;
|
D. const bool mark=true;
|
|
|
8.C++源程序文件的默认扩展名为( B )。(3.00分)
|
|
A. exe
|
B. cpp
|
C. lik
|
D. obj
|
|
|
9.
在下面循环语句中循环体执行的次数为(A )。
int i=0; do i++; while(i*i<10);
(3.00分)
|
|
|
|
10. 以下说法中正确的是(A )。
(3.00分)
|
|
A. C++程序总是从main函数开始执行
|
B. C++函数必须有返回值,否则不能使用函数
|
C. C++程序总是从第一个定义的函数开始执行
|
D. C++程序中有调用关系的所有函数必须放在同一个程序文件中
|
|
|
11.
在下面的一维数组定义中,哪一个有语法错误。( A )
(3.00分)
|
|
A. int a[];
|
B. int a[]={1,2,3};
|
C. int a[5];
|
D. int a[10]={0};
|
|
|
12. 在下面循环语句中循环体执行的次数为( B )。
int i=0,s=0; while(s<20) {i++; s+=i;}
(3.00分)
|
|
|
|
13. switch语句能够改写为( A )语句。
(3.00分)
|
|
A. if
|
B. do
|
C. for
|
D. while
|
|
|
14.
设”int a=15,b=26;”,则”cout<<(a,b);”的输出结果是(C )。
(3.00分)
|
|
A. 15,26
|
B. 15
|
C. 26
|
D. 26,15
|
|
|
15. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为(C )。
(3.00分)
|
|
|
|
16.
在下面循环语句中内层循环体S语句的执行总次数为( D )。
for(int i=0; i<n; i++)
for(int j=i; j<n; j++) S;
(3.00分)
|
|
A. n(n-1)/2
|
B. (n+1)/2
|
C. n2
|
D. n(n+1)/2
|
|
|
17.
设x和y均为bool量,则x && y为真的条件是( C )。
(3.00分)
|
|
A. 它们均为假
|
B. 其中一个为假
|
C. 它们均为真
|
D. 其中一个为真
|
|
|
18.
由C++源程序文件编译而成的目标文件的默认扩展名为( C )。
(3.00分)
|
|
A. lik
|
B. cpp
|
C. obj
|
D. exe
|
|
|
19. 函数重载是指(A )。
(3.00分)
|
|
A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
|
B. 两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
|
C. 两个以上的函数取相同的函数名,并且函数的返回类型相同
|
D. 两个以上的函数名字不同,但形参的个数或类型相同
|
|
|
20. 当处理特定问题时的循环次数已知时,通常采用( A )来解决。
(3.00分)
|
|
A. for循环
|
B. do循环
|
C. while循环
|
D. switch语句
|
|
|
二、填空题(每小题4分,共40分)(总分40.00)
|
|
1.
表达式x=x+1表示成增1表达式为_______。
(4.00分)
|
|
答:
|
|
答:
++x
2.
表达式x=x+1表示成增1表达式为__________。
(4.00分)
|
|
答:
|
答:
++x
3.
假定p所指对象的值为25,p+1所指对象的值为46,则执行“(*p)++;”语句后,p所指对象的值为______。
(4.00分)
|
|
答:
|
答: 26
4.
设px是指向一个类动态对象的指针变量,则执行”delete px;”语句时,将自动调用该类的___________。
(4.00分)
|
|
答:
|
答:
析构函数
5.若要在程序文件中进行标准输入输出操作,则必须在开始的#include命令中使用____________头文件。 (4.00分)
|
|
答:
|
答:
iostream.h 或 iomanip.h
6.
假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为___________。
(4.00分)
|
|
答:
|
答:*(p->b) 或 *((*p).b)
|
7.
若需要把一个函数”void F();”定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句:_____________。
(4.00分)
|
|
答:
|
答:friend void F();
8. 使用const语句定义一个标识符常量时,则必须对它同时进行__________。(4.00分)
|
|
答:
|
答:初始化
9. 执行“typedef int ABC[10];”语句把ABC定义为具有10个整型元素的_______。(4.00分)
|
|
答:
|
答:
数组类型
10.
假定一个二维数组为a[M][N],则a[i]的地址值(以字节为单位)为______________。
(4.00分)
|
|
答:
|
答:
a+(i*N)*sizeof(a[0][0]) 或a+i*sizeof(a[i])
[/erphpdown]
评论0