《C++程序设计》课程复习资料
一、单项选择题:
1.下列字符串中可以用作C++标识符的是    [    ]
A.goto          B.Student      C.123          D.k-ld
2.定义变量int a=6,则a++的值是  [    ]
A.7B.6 C.5  D.4
3.已知字母A的ASCII码为65,则表示字符常量A错误的是    [    ]
A. '\101'      B. '\x41'      C. 65      D.“A”
4.结构化程序由三种基本结构组成,不包括    [    ]
A.顺序结构      B.选择结构C.控制结构      D.循环结构
5.己知有定义:
const int D 5;
int i=1;
double f=0.32;
char c=15;
则下列选项错误的是          [    ]
A.++i;B. D--;C. c++;D. --f;
6.若有定义为“int *r =new int [10];”,则释放指针所指内存空间的操作是 [    ]
A.delete [ ]r;B.delete *rC.delete  r;D.delete r[ ];
7.下列哪个是C++语言的不正确的标识符?  [    ]
A._No1  B. Ab1  C. bgc  D. int
8.下列哪个是C++语言的合法的字符常量?    [    ]
A. ”\0”  B. '054'令数组全部的值为0    C. '\x89' D. '\092'
9.定义整型变量x,y,z并赋初始值6的正确语句是    [    ]
A.int x=y=z=6; B. int x=6,y=6,z=6;  C. x=y=z=6;  D. int x,y,z=6;
10.用C++语言编写的代码程序      [    ]
A.可立即执行B.是一个源程序
C.经过编译即可执行D.经过解释才能执行
11.将两个字符串连接起来组成一个字符串时,选用的函数是      [    ]
A. strlen()  B. strcpy()  C. strcat()  D. strcmp()
12.在程序中,预处理命令开头的字符都是              [    ]
A. *      B. #      C. &      D. @
13.在C++语言中,表示一条语句结束的符号是  [    ]
A. “#”  B. “;”    C. “}”  D. “//”
14.在下面的循环语句中循环体执行的次数为                  [    ]
for(int i=0;i<n;i++)
if(i>n/2)break;
A.n/2      B.n/2+1      C.n/2-1      D.n-1
15.在下面的一维数组定义中,有语法错误的语句是      [    ]
A. int a[]={1,2,3};    B. int a[10]={0};
C. int a[];              D. int a[5];
16.下面的保留字中,不能作为函数的返回类型      [    ]
A. void      B. int      C. new      D. long
17.下面的函数声明中,“void BC(int a, int b);”的重载函数是    [    ]
A. int BC(int x, int y);                B. void BC(int a, char b);
C. float BC(int a, int b, int c=0);    D. int BC(int a, int b=0);
18.假定AB为一个类,则该类的复制构造函数的声明语句为        [    ]
A. AB&(AB x);  B. AB(AB x);    C. AB(AB* x);  D. AB(AB&);
19.表达式(1,2,3,4)的结果是    [    ]
A. 1      B. 2      C. 3      D. 4
20.在函数中如果不说明变量的存储类型,则默认的存储类型是  [    ]
A.auto  B.static  C.extern  D.register
21.下面字符序列中,合法的C++常量是  [    ]
A.078B.5LC.9e7.5      D.'AB'
22.int  a声明的自动型变量a在没有赋值的情况下,其值为              [    ]
A.0            B.-1            C.1      D.随机数
23.设“int f(int);”和“int g(int);”是函数f和g的原形,以下将f作为语句调用的是[    ]
A. g(f(3))B. f(g(3))  C. g(f(3)+2) D. p=f(g(3)+1)
24.下面对构造函数和析构函数正确定义的项是  [    ]
A. X::X(参数),  X::~X()B. void X::X(),  void X::~X()
C. X::X(参数),  X::~X(参数)D. void X::X(参数),  void X::~X(参数)
25.变量生存期是指                        [    ]
A.变量定义B.变量在内存中分配存储单元到被释放期间
C.程序的运行D.可执行代码的生存期
26.以下选项中C++表达式不能正确表示的数学关系a<x≤b为    [    ]
A. a<x&&x<=bB. x<=b&& a<x
C. !(a>=x)&&!(x>b)D. a<x<=b
27.下列定义中,定义指向数组的指针p的是  [    ]
A. int *p[5]    B. int (*p)[5]C. (int *)p[5]  D. int *p[ ];
28.设有以下定义:
void f1(int * m, long & n);
int a;
long b;
则以下调用合法的是              [    ]
A.f1(a,b)      B.f1(&a,b)      C.f1(a,&b)      D.f1(&a,&b)
29.下列各类变量中,不是局部变量的是  [    ]
A.register int x;          B.void f(int w)
C.int z;                  D.static int y;(定义在函数外)
30.已知p是一个指向类A数据成员m的指针,A1是类A的一个对象。如果要给m赋值为5,
()正确的语句。 [    ]
A.A1.p=5      B.A1->p=5C.A.*p=5      D.*A1.p=5
31.以下选项中,决定函数的返回值的类型是              [    ]
A.调用该函数的主调函数类型B.return语句中的表达式类型
C.定义函数时所指定的返回值类型D.调用函数时临时决定
32.下面for语句的循环次数为  [    ]
for(int i=0,x=0;!x&&i<=5;i++);
A.无穷次      B.5  C.6        D.7
33.在下面的字符数组定义中,有语法错误的语句是  [    ]
A.char a[20]="abcdefg"B.char a[]="x+y=55"
C.char a[15]={'1','2'}D.char a[10]='5'
34.若用数组名作为函数调用的实参,传递给形参的是  [    ]
A.数组的首地址B.数组中第一个元素的值
C.数组全部元素的值D.数组元素的个数
35.假定AB为一个类,则执行“AB a(4),b[5],*p[2];”语句时,自动调用该类构造函数的次数为[    ]
A. 6B. 7 C.9D. 11
36.当使用fstream流类定义一个流对象,并打开一个磁盘文件时,文件的隐含打开方式为[    ]
A. ios::in      B. ios::out    C. ios::in | ios::out      D.没有
二、填空题:
1.若a是一个字符数组,则使用输入输出流对象cout向屏幕输出数组a中所存字符串的语句为_________。
2.当一个对象定义时,C++编译系统自动调用__________函数建立该对象并进行初始化。
3.C++语言的参数传递机制包括值传递和____________传递两种。
4.假定p是一个指针,则(*p)++运算首先访问__________,然后使p的值增1。
5.假定对二维数组a[3][4]进行初始化的数据为{{2, 5, 6}, {2,8},{7}},则a[1][1]被初始化为_______。
6.设px指向一个类的动态分配的对象,则执行“delete px;”语句时,将自动调用该类的_______________。
7.变量的基本类型有、实型、字符型和枚举型。
8.语法的三种基本结构为顺序结构、选择结构和结构。
9.一个指针指向一个Data类对象,它保存着该对象的__________,相应的指针类型为Data类。 
10.若do循环的“尾”为“while(++i<10)”,并且i的初值为0,同时在循环体中不会修改i的值,则循环体将被重复执行__________次后正常结束。
11.假定用户没有给一个名为AB的类定义构造函数,则系统为其隐含定义的构造函数为________________。
12.当在程序中执行到__________________语句时,就立即结束本层循环类语句或switch语句的执行。
13.字符和字符串常数的定界符分别为_________和双引号(")。
14.应用程序hello.cpp中只有一个函数,这个函数的名称是__________。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。