C数组的几个问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 08:23:18
1.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置公式为____
A)i*m+j B)j*m+i C)i*m+j-1 D)i*m+j+1
答案是D。请问为什么是D选项,怎么得出来的?

2.若二维数组a有m列,则在a[i][j]前的元素个数为______
答案是B。怎么得出来的?

请各位老师不吝指教,山人有礼了。

wufuwen2006看错了吧,他的意思是数组a[N][M],元素a[i][j]
。其实很简单,因为c中数组序号从0开始,a[i][j]在i+1行,所以在它前面有i行,这i行总共是i*m个元素,而第i+1行第一个元素是a[i][0];
所以在此之前有i*m+(j-1)-0+1个元素,所以第二题填A,当然第一题填D了

第一题答案是对的,注意元素在数组中的位置是从1开始编号
既然第一题是对的,很自然它前面的元素个数就应该是 它的位置-1
所以答案是 D答案-1=A答案

你这道题目就是错的,二维数组a有m列是什么意思,a[i][j]只能是i行j列,如果m是看成一整串,m也是i*j.