找到数组中的最小数字及其位置

时间:2015-08-31 01:58:31

标签: c++ c arrays

我有这个代码,我想找到最小的数字以及它在数组3x3中的位置,我该怎么做?

#include <stdio.h>
int main()
 {
    int A[3][3];
  int i,j;
  int min;
min=0;
for(i=0;i<3;i++)    
{
    printf("\n");
    for(j=0;j<3;j++)
    {
        scanf("%d",&A[i][j]);
    }
}
for(i=0;i<3;i++)
{
    for(j=0;j<3;j++)
    {
        if(A[i][j]>=min)
            min=A[i][j];
    }
    printf("\n");
        printf("%d\n",min);
}

}

1 个答案:

答案 0 :(得分:2)

试试这个

#include < stdio.h >
#include < limits.h >

int main() {
    int A[3][3];
    int i, j;
    for (i = 0; i < 3; i++) {
        printf("\n");
        for (j = 0; j < 3; j++) {
            scanf("%d", &A[i][j]);
        }
    }

    int min = INT_MAX, y = -1, x = -1;
    for (i = 0; i < 3; i++) {
        for (j = 0; j < 3; j++) {
            if (A[i][j] < min) {
                min = A[i][j];
                y = i;
                x = j;
            }

            printf("%d ", A[i][j]);
        }
        printf("\n");
    }

    printf("Minimum is %d, located at %d, %d\n", min, y, x);
}