黑马程序员技术交流社区

标题: 如何在以下代码内 求出最小值 求大神指导 [打印本页]

作者: wxw19910324    时间: 2016-1-3 17:18
标题: 如何在以下代码内 求出最小值 求大神指导
class ArrayTest
{   
               
        public static void main(String[] args)
        {
              int[][] arr = {{3,3},{7,3},{5,1}};

                  int sum = 0;
                  for (int x=0; x<arr.length; x++)
                  {
                                for (int y=0; y<arr[x].length; y++)
                                {
                                        sum  = sum + arr[x][y];
                                }
                                System.out.println("sum"+sum);

                  }
               
       
          
        }


}

作者: tang9137    时间: 2016-1-3 22:40
本帖最后由 tang9137 于 2016-1-5 22:22 编辑

class ArrayTest
{   
               
        public static void main(String[] args)
        {
              int[][] arr = {{3,3},{7,3},{5,1}};

                  int min = arr[0][0];
                  for (int x=0; x<arr.length; x++)
                  {
                                for (int y=0; y<arr[x].length; y++)
                                {
                                        if(arr[x][y] < min){
                                                min = arr[x][y];
                                        }
                                }
                                System.out.println("min"+min);

                  }
               
        
         
        }


}
作者: fwqk123    时间: 2016-1-3 22:44
楼上正解
作者: wxw19910324    时间: 2016-1-3 23:39
tang9137 发表于 2016-1-3 22:40
class ArrayTest
{   
               

貌似不对 打印结果都是0  求指教
作者: liyeming    时间: 2016-1-3 23:58
这个基础班一般不会用到吧!
作者: Accoss-x    时间: 2016-1-4 00:30
  1. class ArrayTest
  2. {               
  3.         public static void main(String[] args)
  4.         {
  5.               int[][] arr = {{3,3},{7,3},{5,1}};
  6.                   int min = arr[0][0];
  7.                   for (int x=0; x<arr.length; x++)
  8.                   {
  9.                                 for (int y=0; y<arr[x].length; y++)
  10.                                 {
  11.                                         if(arr[x][y] < min){
  12.                                                 min = arr[x][y];
  13.                                         }
  14.                                 }
  15.                                 System.out.println("min"+min);
  16.                   }         
  17.         }
  18. }
复制代码

作者: tang9137    时间: 2016-1-5 22:22
wxw19910324 发表于 2016-1-3 23:39
貌似不对 打印结果都是0  求指教

哦  是0 就对了  int min = 0  改成  int min = arr[0][0]
作者: 彬小彬    时间: 2016-1-5 22:53
  1. class ArrayTest {               
  2.         public static void main(String[] args){
  3.                 int[][] arr = {{3,3},{7,3},{5,1}};
  4.                 int min = arr[0][0];
  5.                
  6.                 for (int x=0; x<arr.length; x++){
  7.                         for (int y=0; y<arr[x].length; y++){
  8.                                 //if(arr[x][y] < min){
  9.                                 //        min = arr[x][y];
  10.                                 //}
  11.                                 //  if判断可以用3目运算符来替换
  12.                                 min = arr[x][y] < min ? arr[x][y]:min;
  13.                         }
  14.                         //这个打印输出应该在佛如循环的外层输出,不然输出的不是最小值,只是当先内层循环的最小值
  15.                         //比如打印的第一个数,其实是arr[0][0]和arr[0][1]之间的最小值
  16.                         //System.out.println("min"+min);
  17.                 }
  18.                 System.out.println("min= "+min);
  19.         }
  20. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2