输出101—200之间的质数,使用Java方法,结果却每个数字都输出了
public class k {
public static void zhishu(int num1) {
for (int b = 2; num1 > b; b++) {
if (num1 % b == 0) {
System.out.println(num1);
break;
}
}
}
public static void main(String[] args) {
for(int c=101;c<=200;c++){
zhishu(c);
}
}
}
结果输出了101-200的所有数字
你的质数判断有问题
public static void zhishu(int num1) {
for (int b = 2; num1 > b; b++) {
if (num1 % b == 0) {
break;
}
}
if (b==num1) {
System.out.println(num1);
}
}
自己本身要去掉呀,可以参考下这个
public static void main(String[] args) {
for(int i=101;i<=200;i++){
for(int j=2;j<=i;j++){
if(i%j==0&&i!=j){
break;
}
if(j==i){
System.out.println(" "+j);
}
}
}
}