各位可以帮我看看为什么这个问题在哪里(没有输出诶)? 谢谢啦!
#include<stdio.h>
int main(void)
{
/Begin/
int m,n,i,j,max,row,col;
printf("Input m, n:");
scanf("%d,%d",&m,&n);
printf("Input %d*%d array: ",m,n);
int a[m][n];
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
max=a[0][0];
for (i=0;i<m;i++)
{
for (j=0;i<n;j++)
{
if (a[i][j]>max)
{
max=a[i][j];
row=i+1;
col=j+1;
}
}
}
printf("max=%d, row=%d, col=%d",max,row,col);
/*********End**********/
return 0;
}
for (i=0;i<m;i++)
{
for (j=0;i<n;j++)////这里应该是j<n吧, 你写的i<n, 不知道是你复制错了,还是写错了
{
if (a[i][j]>max)
{
修改后代码如下,结果已验证:
#include<stdio.h>
int main(void)
{
int m,n,i,j,max,row,col;
printf("Input m, n:");
scanf("%d,%d",&m,&n);
printf("Input %d*%d array: ",m,n);
int a[m][n];
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
max=a[0][0];
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
{
if (a[i][j]>max)
{
max=a[i][j];
row=i+1;
col=j+1;
}
}
}
printf("max=%d, row=%d, col=%d",max,row,col);
return 0;
}
结果验证:
Input m, n:2,2
Input 2*2 array: 1
2
3
4
max=4, row=2, col=2