问答详情
源自:6-6 编程练习

请问这段代码错在那里,为什么为什么就是过不了???

前面的三行为了方便查看,已经省略。
下面的源代码用软件看没有显示那里错了,但是就是运行不了。求各位大佬帮忙看看。谢谢
 int [] shu=new int[]{ 61, 23, 4, 74, 13, 148, 20 };
   
         int daf = shu [0];
         
         int xof = shu [0];
         
         int cun1 = 0;
         
         int cun2 = 0;
         
         for (int q=0;q<=shu.length;q++){
         
          if (shu[q]>daf){
          
           cun1 = shu[q];
           
          }
          if (shu[q]<xof){
          
           cun2 = shu[q];
           
          }
         
         }
          System.out.println("数组中最大的数是"+cun1);
          System.out.println("数组中最小的数是"+cun2);


提问者:慕姐907971 2020-01-18 22:21

个回答

  • 慕娘5579366
    2020-03-17 09:22:01

    你把你if都改一改 if(daf<shu[q]){

    def=shu[q];} if(xof>shu[q]){xof=shu[q];}  

  • qq_虓弑悳酆_0
    2020-03-15 18:19:09

    你这设置的daf和xof的意义在哪 你倒是用上啊 

  • 慕仔2246529
    2020-03-15 10:15:05

    你这个程序是求不出最大值最小值的,你一直都是在跟shu【0】比,daf和xof应该是变化的

  • 慕斯卡4055763
    2020-03-02 19:54:33

    非常的对

  • 慕用4010874
    2020-01-19 11:21:45

    for (int q=0;q<=shu.length;q++)  改成  for (int q = 0; q < shu.length; q++) 试试