Enimo 发表于 2017-3-24 01:22:19

擂台法比大小 为什么会出现这样情况?why?

这是本人写的代码:
#include<stdio.h>
int main()
{
        int i,j,maxrow,maxcolum,minrow,mincolum,max,min;
        int a={{1,2,3,4},{5,6,7,8},{9,10,11,-1}};
        max=a,min=a;
        for(i=0;i<3;i++)
          for(j=0;j<4;j++)
           if(a>a)
             min=a;
             minrow=i;
             mincolum=j;
        printf("minrow=%d,mincolum=%d,min=%5d\n",minrow,mincolum,min);
    for(i=0;i<3;i++)
      for(j=0;j<4;j++)
      if(a<a)
         max=a;
         maxrow=i;
         maxcolum=j;
    printf("maxrow=%d,maxcolum=%d,max=%5d",maxrow,maxcolum,max);
    return 0;
}

minrow=3,mincolum=4,min=    -1
maxrow=3,maxcolum=4,max=11


why why最大值明明是三行三列啊
但是结果却是:

Enimo 发表于 2017-3-24 01:23:28

倒数3 4行是运行的结果。

Py_thon 发表于 2017-3-24 10:54:14

本帖最后由 Py_thon 于 2017-3-24 10:56 编辑

你的for 循环没用大括号 括起来 ,
这么写是在循环结束对两个变量赋值的,
alt+F8 很清楚看出逻辑层次了。
页: [1]
查看完整版本: 擂台法比大小 为什么会出现这样情况?why?