若有说明 int a[3][4];则a数组元素的非法引用是

A. a[0][2*1]
B. a[1][3]
C. a[4-2][0]
D. a[0][4]
选D为什么

对于 a[3][4]说明有12元素,行从0到2,列从0到3。a[0][4]的列超界。

数组说明的一般形式为:类型说明符 数组名 [常量表达式],……; 其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义的数组标识符。方括号中的常量表达式表示数据元素的个数,也称为数组的长度。

数组就是一次性定义相同数据类型的一组变量数组定义。

举例

int a[10]; 说明整型数组a,有10个元素。若要表示第10个元素,则使用a[9]。第一个则是a[0]。

float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。

char ch[20]; 说明字符数组ch,有20个元素。

扩展资料:

四种常见的数组排序方法

一、冒泡排序法:将数组中的相邻两个元素进行比较,将比较大(较小)的数通过两两比较移动到数组末尾(开始),执行一遍内层循环,确定一个最大(最小)的数,外层循环从数组末尾(开始)遍历到开始(末尾)。

二、选择排序法:将要排序的数组分成两部分,一部分是从大到小已经排好序的,一部分是无序的,从无序的部分取出最小的放到已经排序的最后面。

三、插入排序法:将要排序的数组分成两部分,每次从后面的部分取出索引最小的元素插入到前一部分的适当位置

四、快速排序法:快速排序法号称是目前最优秀的算法之一,实现思路是,将一个数组的排序问题看成是两个小数组的排序问题,而每个小的数组又可以继续看成更小的两个数组,一直递归下去,直到数组长度大小最大为2。

参考资料来源:百度百科-数组

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
对于 a[3][4],
有a[x][y],
其中x范围[0,1,2],y范围[0,1,2,3]。
显然D不对本回答被提问者采纳
第2个回答  2011-06-04
因为定义的a[3][4]
实际最多访问到a[2][3]
像定义a[10]最多访问到a[9]一个道理
第3个回答  2011-06-04
D.int a[3][4];//说明有12元素,行从0到2,列从0到3。a[0][4]的列超界。