各位大侠帮帮忙!java程序,没有语法错误,编译通过,但结果不对

来源:百度知道 编辑:UC知道 时间:2024/06/01 15:38:03
要求前一百个素数

程序是用JAVA写的,没有语法问题,编译通过,就是结果不是要求的结果
结果是:
-2147483647
-2147483645
-2147483643
-2147483641
-2147483639
-2147483637
-2147483635
-2147483633
-2147483631
-2147483629
-2147483627
-2147483625
-2147483623
-2147483621
-2147483619
-2147483617
-2147483615
-2147483613
-2147483611
-2147483609
-2147483607
-2147483605
-2147483603
-2147483601
-2147483599
-2147483597
-2147483595
-2147483593
-2147483591
-2147483589
-2147483587
-2147483585
-2147483583
-2147483581
-2147483579
-2147483577
-2147483575
-2147483573
-2147483571
-2147483569
-2147483567
-2147483565
-2147483563
-2147483561
-2147483559
-2147483557
-2147483555
-2147483553
-2147483551
-2147483549
-2147483547
-2147483545
-2147483543
-2147483541
-2147483539<

废话!!

public static void printPrimes(int k) {
for (int i = 2; i <= k; i++) {
if (isPrime(i)) {
System.out.println(i);
}
}
}

public static boolean isPrime(int a) {
if (a % 2 == 0) {
return false;
} else {
for (int p = 3; p < a; p++) {//修改后的
if (a % p == 0)
return false;
}
return true;
}

}

public static void main(String[] args) {
printPrimes(100);
}

判断一个数是不是素数,要排除了1和它本身