/*问题:
编写for循环打印1-100内所有的素数
要求每8个换行输出
*/
public class printprime
{
public static void main(String[] args){
//先编写程序,验证7这个数字是否为素数
/*实现思路:
7/1 不需要
7/2 等同于7%2!=0
7/3 等同于7%2!=0
7/4 等同于7%2!=0
7/5 等同于7%2!=0
7/6 等同于7%2!=0
7/7 不需要
结论是:7是素数
*/
int i=7;
int flag=1;//默认将i看成一个素数;1表示素数
//或者定义boolean isprime =true//默认将i看成一个素数
for(int j=2;j<i;j++){
//j是什么:2 3 4 5 6
if(i%j==0){//只要有一个能除尽的数,即为非素数
//isprime=false;// 随意定义,最后的逻辑判断改变就可以了
flag=0;
break;//已经知道i非素数,跳出循环,提高效率。
//或j=i 也可跳出循环
}
}
if(flag==0){
System.out.println(i + "不是素数");
}else{
System.out.println(i + "是素数");
}
//或者直接写成
// System.out.println(flag==1?i+"是素数":i+"不是素数");
//System.out.println(isprime?i+"是素数":i+"不是素数");
int m;
int count=0;//count不能定义到循环里,否则循环一次归0一次
for(m=2;m<=100;m++){//外部for循环只负责取出每一个数字m
//以下代码只判断m是否为素数
boolean isprime=true;
for(int n=2;n<m;n++)
if(m%n==0){
isprime=false;
break;
}
if(isprime){
System.out.print(m+"\t");
count++;
if(count==8){
System.out.println();
count=0;//注意归0
}
/*if(count%8==0){
System.out.println();
}*/
}
}
}
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200402104414716.png)
不知道为什么粘贴的截图一上传就只有一串链接,有没有人帮帮我如何上传截图,在线等!!!!!!!1