int i,j
for(i = 2i <= 100i++){//从2数到100,判断之间的每一个数是否是质数
//下面的循环是质数判断过程
for(j = 2j <= i/2j++){
if(i % j == 0)
break//如果这个数能被一个数整除,那么这个数不是质数。break的作用是跳出此次循环,进入下一次循环。
}
if(j >i/2){
System.out.println(i)//如果这个数不能被自身1/2的数整除,他就是质数,输出这个数.System.out.println()这个语句就是输出语句
}
}
System.out.println()//这句语句是多余的,什么也没打印。
完整代码及运行结果如图。
拓展资料
质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
这道题只要理解质数的计算方法就容易解答。
我给的答案是可以你输入的数以内的所有质数
import java.util.Scannerpublic class test2 {
public static void main(String arg[]){
System.out.println("请输入要求除的质数")
Scanner in = new Scanner(System.in)
int num=in.nextInt()
int a=0
for(int j=numj>1j--){
for(int i=2i<ji++){
if(j%i==0){
a++
}
}
if(a==0){
System.out.println(j+"是质数。")
}
else {
a=0
}
}
}
}
亲测可用