10. (本题分值:1.0) 有以下程序段
int k=0:
while (k=1) k++;
while循环执行的次数是
A. 无限次(死循环)
B.有语法错,不能执行
C.一次也不执行
D.执行1次
参考答案:A (注意while后面的表达式(k=1)是赋值表达式,该表达式的值恒为1(true),并不是将k与1比较相不相等;比较运算是k==1这种形式)
11. (本题分值:1.0) C++语言中函数返回值的类型决定于
A.return语句中的表达式类型
B.调用函数的主调函数类型
C.调用函数时变量的类型
D.定义函数时所指定的函数类型
参考答案:D
12. (本题分值:1.0) 若有如下的函数定义:
int sum( int a, float b)
{ return a+(int)b; }
则下列函数原型不正确的是()。
A.int sum( int, float );
B.int sum( int x, float y );
C.int sum( int b, float a );
D.int sum( int a=10, float b );
参考答案:D (函数原型即函数声明的一种形式,可以只声明形参类型而省略形参名称,或形参名称可以任意;D选项是用带默认参数的函数定义形式做干扰)
13. (本题分值:1.0)有如下的函数定义:int Xfun(int x){ int y=x; {int x=10; y+=x;} return x+y;}
通过表达式Xfun(5)调用该函数,则得到的返回值为
A.20
B.10
C.5
D.15
参考答案:A
14. (本题分值:1.0)在定义int x[3][2]以后,对x元素的引用正确的是__________。
A.x[0, 0]
B.x[3][1]
C.x[2][2]
D.x[0][0]
参考答案:D (注意下标不要越界,本题定义的数组,其行标最多到2,列标最多到1)
15. (本题分值:1.0)设有数组定义:char array[]="China";,则数组array所占的空间为__________。
A.4个字节
B.5个字节
C.6个字节
D.7个字节
参考答案:C (字符串长度只算有效字符,不包括存储单元中的结束标记符’\0’)
16. (本题分值:1.0) 两个数组a和b进行如下初始化:
char a[ ]=“abcde”;
char b[ ]={'a','b','c','d','e'};
则以下叙述正确的是__________。
A.a与b数组完全相同
B.a与b长度相同
C.a和b中都存放字符串
D.a数组比b数组长度长
参考答案:D (a数组存储的是一个字符串,字符串必须在末尾加一个空字符’\0’,此空字符’\0’也要被数组a存储。而数组b保存的是一些独立的字符,并非字符串,故不需要’\0’做结束标记)