方法一
借助boolean类型值实现对素数的打印:
import java.util.Scanner; public class Test7 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入开始值:"); int start = sc.nextInt(); System.out.println("请输入结 for (int i = start; i <= stop; i++) { //定义布尔类型值对数值假设先为素数束值:"); int stop = sc.nextInt(); System.out.println("当前素数的个数是:" + search(start, stop)); } public static int search(int start, int stop) { System.out.println("以下为范围值内的素数:"); int count = 0; boolean flog = true; for (int j = 2; j < i / 2; j++) { if (i % j == 0) { //如果该值经计算不为素数,变换flog值为false flog = false; //跳出内层循环 break; } } //打印出值为true的值 if (flog) { System.out.print(i + " "); count++; //记录素数个数 //打印格式每行最多输出10个数值 if (count % 10 == 0) { System.out.println(); } } } System.out.println(); return count; } }
方法二
对外层循环定义名称,用continue进行外层循环的继续执行
import java.util.Scanner; public class Test7_2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入开始值:"); int start = sc.nextInt(); System.out.println("请输入结束值:"); int stop = sc.nextInt(); System.out.println("当前素数的个数是:" + search(start, stop)); } public static int search(int start, int stop) { System.out.println("以下为范围值内的素数:"); int count = 0;//定义count变量记录素数个数 OUT: //外部循环标签 for (int i = start; i <= stop; i++) { for (int j = 2; j < i / 2; j++) { if (i % j == 0) { continue OUT; } } System.out.print(i + " "); count++; //if语句使每行最多打印10个数 if (count % 10 == 0) { System.out.println(); } } System.out.println(); return count; } }
方法启蒙于黑马程序员教学视频,如有意愿,可自行关注B站黑马程序员 。