这串代码为什么运行不了,大家可以帮我看下吗?


#include
#define M  500
int a[M][M],max[M][M]={0},min[M][M]={0};
main()
{  int i,j=0,x=0,n,y=0,m;
   scanf("%d",&n);
   for(i=0;i0;j-24902;
       min[i][j]=1000;
      }
   }
   for(i=0;i0;j"%d",&a[i][j]);    
    } //输入 
    for(i=0;i0;
        for(j=0;j>=0 && j=0;j++,i--)  
          { 
            if(a[i][j]0;i--)
//     {  for(j=0;j>=0&&j=0;j++,i++)  
//          {
//            if(a[i][j]>max[i][j])
//             { max[i][j]=a[i][j];
//               x=i;  y=j;
//             }
//          }
//        max[x][y]=a[x][y];
//     }
    for(i=0;i0;j"%d ",min[i][j]);    
       printf("\n");
    }
    
}

你的题目是啥啊,为啥max和min也是二维数组?如果max代表行的最大值的话,max只需要定义一维数组啊
把题目贴出来,可以改一下。

你这i越来越小,不就死循环了

img

i初始是0,内层里执行i--??
i是外层循环变量,你在内层里乱改它的值,这不是标准死循环吗

img