Babylanyon
2020-12-14 20:54
采纳率: 55.6%
浏览 8

求助|代码运行的结果。。。很奇怪

#include<stdio.h>
int main( )
{
 int m,n,i,j,a[10][10],max,min;
 scanf("%d*%d",&n,&m);
 for(i=0;i<n;i++)
 {
  for(j=0;j<m;j++)
  {
   scanf("%d",&a[i][j]);
  }
 }
 max=0;
 min=0;
 for(i=0;i<n;i++)
 {
  for(j=0;j<m;j++)
  {
   if(a[max][j]<a[i][j])
    max=i;
   if(a[i][min]>a[i][j])
    min=j;
  }
 } 
 if((a[max][j]=a[i][j])&&(a[i][min]=a[i][j]))
        printf("Array[%d][%d]=%d\n",i,j,a[min][max]);
 else
  printf("None\n");
 return 0;
}

原题

查找二维数组的鞍点

找出具有m行n列二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小,其中1<=m,n<=10。同一行和同一列没有相同的数。要求:

    1)输入m和n,输入格式m*n;

    2)输入m行每行n个整数。

    3)查找鞍点。

    4)如果找到鞍点,则输出该元素所在行、列和值,均采用“%d”格式输出。

    5)如果找不到鞍点,则输出None。

我输入一个3*4的数组

1 2 9 4       5 4 7 2               6 3 8 5

输出结果是array【3】【4】=7

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

相关推荐 更多相似问题