2015-10-30 98 views
-2

您好我有使程序(Java)的在其上输入一个数字,它输出的因素的数量它具有(EX:4 ---> 3)java的for循环因素程序

代码:

package Class; 

import java.util.Scanner; 

public class Profgrams { 

public static void main(String[] args) { 

    System.out.println("Enter the number;"); 
    Scanner scan = new Scanner(System.in); 

    long n = scan.nextLong(); 

    for(int i=1, f=0; i <= n; i++){ 
     if(n % i == 0){ 
      f++; 
     } 
     System.out.println(f); 
    } 

    } 

} 

感谢您的帮助。

+2

你能解释一下你的程序有什么问题吗?输出是否不正确?你有错误吗? – TNT

+0

输出不正确EX(4 - > 1223) – KayZ

+0

它在每一行上打印每一行 – KayZ

回答

1

在循环之前声明并初始化f,然后在循环结束后打印结果。这样,循环的每次迭代都不会发生打印。

int f = 0; 
// ... 
System.out.println(f); 
+0

我做了,它出来一样 – KayZ

+0

删除循环内的打印语句。 – TNT

+0

我工作,非常感谢! – KayZ