编一个程序,定义一个n行n列的二维数组,例如,n=4,输入该数组的全部数据。可以在定义数组时赋于常量值。求二维数组中这样元素的位置:它在行上是最小,在列上也是最小。
intn=4;int[,]a={{25,12,22,14},{15,16,17,18},{19,20,21,13},{23,24,11,26}};inti,j,k,temp,min;Console.Write("\n二维数组:");for(i=0;i{Console.Write("\n\t");for(j=0;j}Console.WriteLine("\n\n行列最小值");for(i=0;ifor(j=0;j{temp=a[i,j];min=temp;/*for(k=0;k{if(a[i,k]if(a[k,j]}*/for(k=0;kif(a[i,k]for(k=0;kif(a[k,j]if(temp==min)Console.WriteLine("i={0},j={1}{2}",i,j,temp);}
举一反三
- 一个一维数组是一个数组元素构成的线性表,一个n维数组可以看成是n个n-1维数组构成的线性表,所以多维数组也是线性表。
- 编一个程序,定义一个n行n列的二维整数数组,赋初值,然后求出对角线上的元素之和。
- 定义一个包括n个元素的一维数组a,并从键盘输入这n个元素,程序填空。 int n,i; cin>>n; int 【】;//定义数组 for(i=0;i[n;i++) cin]>【】;//输入数组元素
- 以下关于二维数组的描述中,正确的有:()。 A: 如有定义inta[2][3];则数组a的最后一个元素为a[1][2] B: 一个一维数组,它的每一个元素也是类型相同的一维数组时,便构成二维数组 C: 在定义二维数组时,可以将该数组的两个维数全部省略 D: 对于二维数组,即可以按元素初始化,也可以按行初始化
- 在定义二维数组时,可以将该数组的两个维数全部省略。
内容
- 0
若二维数组a有n列,则在存储该数组时,a[i][j]之前有________个数组元素。[/i]
- 1
设二维数组A[1.. m,1.. n](即m行n列)按行存储在数组B[1.. m*n]中,则二维数组元素A[i,j]在一维数组B中的下标为(
- 2
二维M*N数组的名字是一个指向N元数组的指针常量。
- 3
二维数组a有m行n列,则在数组 a 元素个数为
- 4
定义二维数组并同时进行全部数组元素初始化时,可以省略数组第一维长度的说明。