日期:2014-05-20  浏览次数:20801 次

出错问题:需要 ".class"
public   class   PrimeNumber{
           
            public   static   int   selectPrime(int   i){
                    for(int   k=2;k <i;k++){
                        int   n=0;
                        if(i%k==0)   return;
                        if(i%k!=0)   n=i/k;  
                        if(n> 1)   continue;  
                        else       System.out.println(i);
                }
            }
            public   static   void   main(String[]   args){
                 
                  try{
                        System.out.println( "1~100内的素数为: ");
                        for(int   j=2;j <100;j++){
                            selectPrime(int   j);
                         
                      }
                  }catch(Exception   exc){
                            System.out.println( "程序出错! ");
                  }
          }
}

------解决方案--------------------
程序里面有两个错误:
1、 if(i%k==0) return;返回了一个空值,而不是方法中需要得int型;
2、 selectPrime(int j); j前面已经定义为int型,这里又进行重定义,而且没有赋值。应该删除int标记
------解决方案--------------------
1. 你的 selectPrime(int i) 是不应该有返回值的
2. main 方法中不需要 try-catch 块
3. main 方法中调用selectPrime(int i)这个方法时不应该加上参数据类型,正确的调用应该是selectPrime(i)
------解决方案--------------------
else
System.out.println(i);
这个语句也不应该在 for 循环中写,这样写会出现大量重复数据,要写在外面