若有以下定义和语句: int a[10]={1,2,3,4,5,6,7,8,9,10},p=a; 则不能表示a数组元素的表达式是( ) A) *p B)
int a[10]={1,2,3,4,5,6,7,8,9,10},p=a;
则不能表示a数组元素的表达式是( )
A) *p B) a[10] C)*a D) a[p-a] 展开
不能表示a数组元素的表达式是( B) a[10] )----因为数组a的最大下标只能是9,即a[9],
a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],一共10个元素。
A、*p ---表示取p指针指向的单元的值,即表示取数组a的首个元素a[0]的值。
B、a[10] ---因为数组a一共10个元素,从0开始计数,
即a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],正好10个,没有a[10],所以a[10]就是不能表达这个数组元素。
C、*a ----数组名a中保存的是数组的首地址,*是取单元中的值,*a就是取数组首地址中单元中a[0]的值。
D、a[p-a] --- p指向的是数组a,因为p中与a同数据相同都是数组a的首地址,而p-a就等于0,因此 a[p-a]就相当于a[0]。
扩展资料:
数组元素也是一种变量, 其标识方法为数组名后跟一个下标。下标表示了元素在数组中的顺序号。数组元素通常也称为下标变量。必须先定义数组, 才能使用下标变量。在C语言中只能逐个地使用下标变量,而不能一次引用整个数组。
数组元素的一般形式为:
数组名[下标]
其中下标只能为整型常量或整型表达式。如为小数时,C 编译将自动取整。
例如:
a[5]
a[i+j]
a[i++]
都是合法的数组元素。
参考资料来源:百度百科-数组元素
a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9], 一共10个元素
那A ,B,C 分别是什么意思啊
A. *p ---表示取p指针指向的单元的值,即表示取数组a的首个元素a[0]的值
C. *a ----数组名a中保存的是数组的首地址,*是取单元中的值,*a就是取数组首地址中单元中a[0]的值
D. a[p-a] --- p指向的是数组a,因为p中与a同数据相同都是数组a的首地址, 而p-a就等于0,因此 a[p-a]就相当于a[0]啦
B. a[10] ---因为数组a一共10个元素,从0开始计数,即a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],正好10个呀,根本没有a[10]呀,所以a[10]就是不能表达这个数组元素的啦
数组是从a[0] 到 a[9] 的。。。。。。
那A ,B,C 分别是什么意思啊
广告 您可能关注的内容 |