若有函数内部说明:int a[3][4];,则数组a中各元素A.可在程序的运行阶段得到初值0 B.可在程序的编译阶段得到初值0C.不能得到确定的初值 D.可在程序的编译或运行阶段得到初值0
- A可在程序的运行阶段得到初值0
- B可在程序的编译阶段得到初值0
- C不能得到确定的初值
- D可在程序的编译或运行阶段得到初值0
若有函数内部说明:int a[3][4];,则数组a中各元素A.可在程序的运行阶段得到初值0 B.可在程序的编译阶段得到初值0C.不能得到确定的初值 D.可在程序的编译或运行阶段得到初值0
本题主要考查数组的定义及初始化。在对数组进行定义和初始化时,需要注意以下事项。(1)数组的内存空间在编译时确定,定义数组时的n值只能使用常量,不能使用变量。(2)定义数组时可以不标明数组元素的个数,而是通过赋初值的方式确定,编译系统将自动计算花括号内的数据数量作为数组的元素个数。(3)数组初始化时,当初值的个数小于整型常量n时,编译系统会自动补0。一旦给定初值数超过n,编译系统将报错。(4)初始化数组的元素类型,必须与定义数组时的类型一致。(5)数组名记录了数组在内存中的首地址,其值不能更改。(6)除字符数组外,不能直接用数组名对数组进行整体输入或输出。本题中定义了一个3行4列的数组,但没有对其进行赋初值操作,可能我们会想在系统编译时会自动补0,这只是在初值个数小于数组定义大小的情况下的操作,如果没有进行赋初值操作,数组中的元素值是不能被确定的。因此,本题答案选C。
1、有如下说明int a[10]={1,2,3,4,5,6,7 },*p=a;则
有如下说明int a[10]={1,2,3,4,5,6,7 },*p=a;则数值为5的表达式是A.*p+4 B.*(p+4) C.*p+=4 D.p+4A*p+4 B*(p+4) C*p+=4 Dp+4
2、有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10}
有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是A*p+9B*(p+8)C*p+=9Dp+8
3、若有说明:inta[3][4];则对a数组元素的非法引用是( )。
若有说明:inta[3][4];则对a数组元素的非法引用是( )。Aa[0][2*1]Ba[1][3]Ca[4-2][0]Da[0][4]
4、若有定义语句:"int a[4][10],*P,*q[4];"且0≤i
若有定义语句:"int a[4][10],*P,*q[4];"且0≤iAD=aBq[i]=a[i]Cp=a[l]DP=&a[2][1]
5、若有说明 int a[3][4];则a数组元素的非法引用是
若有说明 int a[3][4];则a数组元素的非法引用是Aa[0][2*1]Ba[1][3]Ca[4-2][0]Da[0][4]
6、若有说明:int a[3][4]={0};,则下面正确的叙述是A.只初始化了
若有说明:int a[3][4]={0};,则下面正确的叙述是A.只初始化了第一个元素,即a[0][0]可得到初值0B.此初始化语句不正确C.数组a中各元素都可得到初值,但其值不一定为...