/** * 找出【1~100】所有的质数/素数,也就是只能被1和自身整除的数 ,1既不是质数也不是合数 * 要求每输出8个质数换一行 * * 思路:1、首先需要循环遍历到【1~100】中所有的数 * 2、每次循环到一个数都需要去判断该数是否是质数 * 3、是质数就输出,对输出的数进行计数, * 4、判断质数的个数能否被8整除,能整除就换行 * * 需要重点掌握的知识点: * 1、for循环的使用及嵌套 * 2、打标记的时机 * 3、统计的思想 */ class 查找质数{ public static void main(String[] args) { int jiShuQi = 0;//在循环开始前,定义一个计数器变量 ,为了统计输出个数 for (int i = 2; i <= 100 ; i++) {//因为1既不是质数也不是合数,所以从2开始循环 //打标记 boolean zhiShu = true;//每次判断一个数是不是质数前,先认为这个是是质数,在判断过程中如果不是质数,则改变默认值 for (int j = 2; j < i ; j++) { if ((i % j) == 0){ zhiShu = false; break;//如果有一个被整除,说明i就不是质数了,就可以结束循环,不加break程序效率低 } } //上面判断是不是质数的循环中没有改变默认值,则说明是质数,是质数就输出 if (zhiShu){ System.out.print(i + " "); jiShuQi ++;//每输出一个质数,计数器就加1 统计思想 if (jiShuQi % 8 == 0){//当计数器是8的倍数就换行 System.out.println(); } } } System.out.print("\n");//该行代码就是换行的意思,与System.out.println()是一个意思 System.out.println("共计" + jiShuQi + "质数"); } }
使用for循环找质数
于 2022-11-05 10:31:57 首次发布