解题思路:
注意事项:
参考代码:
import java.util.Scanner; public class Main { public static int s(int i) { for (int j = 2; j <= i; j++) { if (i % j == 0 && i != j) return 1;// 素 } return 0; } public static void main(String args[]) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int a[] = new int[n + 1]; for (int i = 0; i < a.length; i++) { if (a[i] == 0) { if (i == 0 || i == 1) { a[i] = 1; continue; } else { int d = s(i); if (d == 0) continue; if (d == 1) { int g = 1; while (g * i <= n) { a[i * g] = 1; g++; } } } } } for (int i = 0; i < a.length; i++) { if (a[i] == 0) System.out.println(i); } } }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:702 |
简单的a+b (C语言代码)浏览:607 |
C二级辅导-计负均正 (C语言代码)浏览:482 |
2006年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:669 |
字符删除 (C语言代码)浏览:721 |
拆分位数 (C语言代码)浏览:444 |
C语言程序设计教程(第三版)课后习题6.11 (C++代码)浏览:522 |
C语言训练-求矩阵的两对角线上的元素之和 (C语言代码)浏览:941 |
2005年春浙江省计算机等级考试二级C 编程题(1) (C语言描述if-else if语句)浏览:1069 |
简单的a+b (C++代码)浏览:444 |