2014-01-29 196 views
0

我是新來的Java編程嘗試通過使用下面的代碼通過掃描儀類輸入值的世界。問題與掃描儀

問題是掃描儀沒有打開用戶輸入的控制檯,並且默認顯示平均值爲零。調試控制檯會拋出文件未找到異常錯誤。請指教...

import java.util.Scanner; 

public class Avg { 

    int no = 0; 
    int sum = 0; 

    void average(){ 
    System.out.println("pls enter 5 numbers"); 
    Scanner s = new Scanner(System.in); 
    for(int i = 0; i > 5; ) { 
     no = s.nextInt(); 
     sum = no + sum; 
     i++; 
    } 
    int avg = sum/5; 
    System.out.println(avg); 
    } 

    public static void main(String[] h){ 
    Avg s = new Avg(); 
    s.average(); 
    } 
} 
+0

'sum/5'總是0.寫入'sum/5.0'。 for循環條件爲 – Maroun

+0

錯誤。 –

+0

將'>'扭曲爲'<';) –

回答

3

第一個for循環應該有i < 5條件,但它是在你的代碼i > 5。所以它會進行0次迭代。

1

For循環有問題。您將i的值設置爲0並檢查它是否大於5。根本不可能。它變成false。請更改條件檢查

for(int i=0;i<5;){ 
no=s.nextInt(); 
sum=no+sum; 
i++; 
} 

否則,i將永遠比5較小和內環路不會得到。因此,avg的值將始終爲0