2015-10-15 101 views
0

隨着掃描儀使用掃描儀的輸入值陣列最小的數字:當沒有找到

import java.util.Scanner; 

public class InputArrayFromScanner { 

    private static Scanner keyIn; 

    public static void main(String[] args) { 
     keyIn = new Scanner (System.in); 
     System.out.print("Enter a Number: "); 
     int inNum = keyIn.nextInt(); 
     int [] arrNum = new int [inNum]; 
     int maxNum = arrNum[0]; 
     int minNum = arrNum[0]; 
     int average = 0; 
     int total = 0; 
     for (int count : arrNum){ 
      System.out.print ("> "); 
      arrNum[count] = keyIn.nextInt(); 
      if (arrNum[count] > maxNum) 
       maxNum = arrNum[count]; 
      else if (arrNum[count] < minNum) 
       minNum = arrNum[count]; 
      total += arrNum[count]; 
      average = total/arrNum.length; 
     } 
     System.out.print("\tBigest Number is:"+maxNum); 
     System.out.print("\tSmallest Number is:"+minNum); 
     System.out.print("\tPlus of Numbers is:"+total); 
     System.out.println("\tAverage Of Numbers is:"+average); 


    } 

} 

沒有掃描儀

public class MinAndMax { 

    public static void main(String[] args) { 
     int [] arrNum = {10,12,80,6,5}; 
     int minNum = arrNum [0]; 
     int maxNum = arrNum [0]; 
     for (int count = 0; count < arrNum.length; count++){ 
      if (arrNum[count] < minNum) 
       minNum = arrNum[count]; 
      else if (arrNum[count] > maxNum) 
       maxNum = arrNum[count]; 
     } 
     System.out.print ("\tSmallest Number is "+minNum); 
     System.out.print ("\tBigest Number is "+maxNum); 
    } 

} 

請告訴我是什麼問題?

+1

什麼問題?????請告訴。 –

回答

1

在第一個片段你遍歷數組值與增強的for循環:

for (int count : arrNum) 

你應該遍歷數組索引:

for (int count = 0; count < arrNum.length; count++) 
0

你有一些邏輯錯誤

import java.util.Scanner; 

public class InputArrayFromScanner { 

    private static Scanner keyIn; 

    public static void main(String[] args) { 
     keyIn = new Scanner (System.in); 
     System.out.print("Enter a Number: "); 
     int inNum = keyIn.nextInt(); 
     int [] arrNum = new int [inNum]; 
     int average = 0; 
     int total = 0; 

     for (int count = 0;count<inNum;count++){ 
      arrNum[count] = keyIn.nextInt(); 
     } 

     int maxNum = arrNum[0]; 
     int minNum = arrNum[0]; 

     for (int count = 0; count < arrNum.length; count++){ 
      if (arrNum[count] < minNum) 
       minNum = arrNum[count]; 
      else if (arrNum[count] > maxNum) 
       maxNum = arrNum[count]; 
      total += arrNum[count]; 
      average = total/arrNum.length; 
     } 

     System.out.print("\tBigest Number is:"+maxNum); 
     System.out.print("\tSmallest Number is:"+minNum); 
     System.out.print("\tPlus of Numbers is:"+total); 
     System.out.println("\tAverage Of Numbers is:"+average); 


    } 

} 

試試這個。

+0

非常感謝 –