1836 - 课后习题7.1
时间限制 : 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> #include<math.h> int main() { int i,j,N; scanf("%d",&N); for(i=2;i<=N;i++) { for(j=2;j<=sqrt(i);j++) if(i%j==0) break; if(j>sqrt(i)) printf("%d\n",i); } return 0; }
C++解答
#include<bits/stdc++.h> using namespace std; long long n,a[1000000]; int main() { cin>>n; for(int i=2;i*i<=n;i++) { if(a[i]==0) { for(int j=i*2;j<=n;j+=i) a[j]=1; } } for(int i=2;i<=n;i++) { if(a[i]==0) cout<<i<<"\n"; } return 0; }