1426 - C语言-筛法求素数
时间限制 : 1 秒
内存限制 : 128 MB
用筛法求之N内的素数。
题目输入
N
题目输出
0~N的素数
输入/输出样例
输入格式
100
输出格式
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
C语言解答
#include<stdio.h> int main() { int i,j,n,flag; while(scanf("%d",&n)!=EOF) { for(i=2;i<=n;i++) { flag=1; for(j=2;j*j<=i;j++) if(i%j==0) flag=0; if(flag)printf("%d\n",i); } } return 0; }
C++解答
#include <iostream> using namespace std; int main() { int i,j; int a; cin>>a; for(i=2;i<=a;i++) { for(j=2;j<=i;j++) { if(i%j==0&&i!=j) break; else if(i==j) cout<<i<<endl; } } return 0; }
Java解答
import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int N,m,i,k; N=in.nextInt(); for(m=2;m<=N;m++) { k=1; for(i=2;i<m;i++) { if(m%i==0) k=0; } if(k!=0) System.out.println(m);} } }