输入一个n行m列(n<=4,m<=4)的数组,c语言

输入一个n行m列(n<=4,m<=4)的数组,先以n行m列的格式输出该数组,然后找出该数组中值最小的元素,输出该元素的及其行下标和列下标
最好运行一下,谢谢

#include <stdio.h>
const int N = 4;

int main() {
int a[N][N],i,j,imin,jmin;
for(i = 0; i < N; ++i)
for(j = 0; j < N; ++j)
scanf("%d",&a[i][j]);
imin = jmin = 0;
for(i = 0; i < N; ++i) {
for(j = 0; j < N; ++j) {
if(a[imin][jmin] > a[i][j]) {
imin = i;
jmin = j;
}
}
}
printf("a[%d][%d] = %d\n",imin,jmin,a[imin][jmin]);
return 0;
}

追问

你这个还能运行了?我怎么全是错误,都不想修改了

追答

把代码全部复制粘贴到编译环境下编译运行,我说的粘贴,暂不要修改,如有错,请把错误信息粘贴上来。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-05-04
#include<stdio.h>
#include<stdio.h>
int main()
{
int n,m,i,j;
int a[4][4];
int row=0,col=0;
int min=100000;//给min一个足够大的数
printf("请输入n和m\n");
scanf("%d%d",&n,&m);
printf("请输入一个n行m列的数组\n");
for( i=0;i<n;++i)
for( j=0;j<m;++j)
{
scanf("%d",&a[i][j]);
if(a[i][j]<min)
{
min=a[i][j];
row=i;
col=j;
}
}
for( i=0;i<n;++i)
{
for( j=0;j<m;++j)
printf("%d\t",a[i][j]);
printf("\n");
}
printf("最小元素是%d行下标是%d列下标是%d\n",min,row,col);
return 0;
}


//代码已附上,如满意望采纳,可追问。。。。

第2个回答  推荐于2017-09-10
int i,j,n,m;
int min,h,l; //min,h,l分别代表最小值,行下标,列下标
int a[,];
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{
//输入元素;
}
max = a[0,0]; h=0; l=0;
for(i=0; i<n; i++)
for(j=0; j<m; j++)
{
if(min > a[i,j]
{
min = a[i,j];
h=i; l=j;
}
}本回答被提问者和网友采纳
相似回答