我必须在矩阵中找到每行的最小值。然后打印包含该元素的行。为什么不能这样做?
for(i=0; i<m; i++)
{
for(j=0; j<n; j++)
{
if(a[i][j]>max)
max=a[i][j];
}
if(min>max){
min=max;
p=i;
}
}
答案 0 :(得分:0)
您需要为每行重置max
:
for(i=0; i<m; i++)
{
max = 0; // or some value less than the minimum value in the matrix
for(j=0; j<n; j++)
{
if(a[i][j]>max)
max=a[i][j];
}
if(min>max){
min=max;
p=i;
}
}
否则,一旦max
替换min
一次,则值永远不会大于max
且小于min
。