最新全国计算机等级考试二级c++笔试题库
28、当类中一个字符指针成员指向具有n个字节的存储空间时,它所能存储字符串的最大长度为______。
A、n-2
B、n-1
C、n
D、n+1
本题考查的是字符指针。
C++中,字符串总是以'\0'作为字符串结束的标志的。
故本题选B。
29、已知数组A和指针p定义为:int A[20][10],*p;,要使p指向A的首元素,正确的赋值表达式是______。
A、p=&A 或 p=A[0][0]
B、p=A[0] 或 p=&A[0][0]
C、p=A 或 p=&A[0][0]
D、p=&A[0] 或 p=A[0][0]
本题考查的指针和二维数组的概念。A[0]表示指针,其存放的是
A[0][0]的地址,A[0][0]表示数组A的第一个值,所以要在A[0][0]前加"&"。
故本题选B。
30、在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用______。
A、内联函数
B、重载函数
C、递归调用
D、嵌套调用
本题考查的是内联函数。
内联函数像宏函数一样展开,没有参数的压栈和退栈操作,因此执行的效率更高。
故本题选A。
31、当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为______。
A、ios::in
B、ios::out
C、ios::in | ios::out
D、没有
本题考查的是文件的操作。
在C++中用fstream流类定义一个流对象并打开一个磁盘文件时,没有隐含的打开方式。
故本题选D。
32、在下面的一维数组定义中,______有语法错误。
A、int a[]={1,2,3}
B、int a[10]={0}
C、int a[]
D、int a[5]
本题考查的是数组的定义。
数组定义时需要指定数组的大小,如果给出初始值,可以省略数组的大小,系统会根据所给的元素自动计算出其大小。但是不可以在没有给出初始值的情况下缺省大小。
故本题选C。
33、已知某应用系统中已经定义了函数fun,其原形是int fun(char ='A'); 则下列函数中,可以在同一系统中加以重载的是______。
A、int fun();