C语言。二维数组,这段话什么意思?可以举个例子吗?

如题所述

比如6个初值{1,2,3,4,5,6},第二维大小是3, 6/3 正好除尽,且等于2,那么一维大小就是2
如果是7个初值,第二维大小还是3, 7/3 = 2 + 1/3, 可见有余数,那么为了保留所有的值,第一维的大小就必须是 所得商数 (2) 加一, 2+1, 也就是3
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-28
比如说
int a[][3] = {.....};
如果打括号里面有24个数,那么 24能被3 整除,所以第一维就是 8
如果里面有25个数,不能被3整除,那么第一维就是 8+1 = 9
说白了, 第一维度就是符合下列不等式子的最小正整数:
x* 第二维度 >= 大括号里的个数追问

书上那句话,书举例子
说:int a[][3] = {1,2,3,4,5,6,7};

等同于int a[3][3]={1,2,3,4,5,6,7};

怎么觉得例子和意思对不上啊!?

就是是7/3,商加1吗?

追答

对啊 你图上的那个例子就是 int[3][3]
你可以这样想,如果是int [2][3]的话,你那7个数不就放不下了吗 所以需要给他再加上1,这样就9个位置来放7个数,剩下两个位置留空不管他

相似回答