解题思路:筛选法
注意事项:
参考代码:
#include <stdio.h>
const int maxn=2000010;
int a[maxn],pnum=0;//将素数存进数组a[]
bool p[maxn]={0};//判断素数
void gg(int n)
{
for(int i=2;i<=n;i++)
{
if(p[i]==false)//如果i是素数
{
a[pnum++]=i;//将i存进素组a[]
for(int j=i+i;j<=n;j+=i)//将素数i的倍数删除
{
p[j]=true;
}
}
}
}
int main()
{
int n;
long long sum=0;
scanf("%d",&n);
gg(n);
for(int i=0;i<pnum;i++)
//printf("%d ",a[i]);
sum+=a[i];
printf("%lld",sum);
return 0;
}
0.0分
3 人评分
【亲和数】 (C语言代码)浏览:536 |
字符串比较 (C语言代码)答案错误????浏览:596 |
C语言程序设计教程(第三版)课后习题6.8 (C++代码)浏览:575 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:551 |
A+B for Input-Output Practice (VI) (C语言代码)浏览:552 |
sizeof的大作用 (C语言代码)浏览:1024 |
大神老白 (C语言代码)浏览:600 |
简单的a+b (C语言代码)浏览:818 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:662 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:524 |