C语言求助,求2--1000之间的素数和怎么做啊~?

求2--1000之间的素数和怎么做啊~?
哪位大侠帮下

首先用筛法得到所有质数,然后一次循环加起来就好了
由于你的数字很小,如果你不熟悉筛法,可以直接丛2开始循环到1000
每个数字都判断,是质数就加到和里,判断K是不是质数最简单的方法就是i从2到sqrt(k)循环,如果任何一个i满足有k%i==0,就不是质数,否则就是
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-02-20
最简单最直观的是:
#include "math.h"
main()
{
int m,i,k,h=0,leap=1;
int sum = 0;
printf("\n");
for(m=2;m<=1000;m++)
{ k=sqrt(m+1);
for(i=2;i<=k;i++)
if(m%i==0)
{leap=0;break;}
if(leap) {printf("%-4d",m);//打印每个素数
h++;sum += m;
if(h%10==0)
printf("\n");
}
leap=1;
}
printf("\nThe total is %d",h); //打印素数的总个数
printf("\nThe sum is %d",sum); //打印总和
}

参考资料:不给分实在对不起我

第2个回答  2008-02-20
main()
{
int i,j,a=1,s=0;
for(i=2;i<1000;i++)
{
for(j=2;j<i;j++)
if(!(i%j)) {a=0;break;}//如果i是合数,a=0,跳出循环
else a=1;
if(a) s+=i;//如果a是质数,s累加
}
printf("%d\n",s);
}本回答被提问者采纳
第3个回答  2008-02-20
结果:76127
#include<stdio.h>
void main()
{
int i,j,sum=0;
for(i=2;i<=1000;i++)
{
for(j=2;j<i;j++)
if(i%j==0)
break;
if(i==j)
//printf(("%5d\n",i);//这一行是显示所有素数
sum+=i;//素数相加
}
printf("%5d\n",sum);//输出相加后结果
}
第4个回答  2008-02-20
#include<stdio.h>
void main()
{
int i,j,sum=2;
for(i=3;i<=1000;i++)
for(j=2;j<i;j++)
if(i%j==0)
continue;
else
sum+=i;

printf("%5d\n",sum);//输出相加后结果
}

C语言求助,求2--1000之间的素数和怎么做啊~?
首先用筛法得到所有质数,然后一次循环加起来就好了 由于你的数字很小,如果你不熟悉筛法,可以直接丛2开始循环到1000 每个数字都判断,是质数就加到和里,判断K是不是质数最简单的方法就是i从2到sqrt(k)循环,如果任何一个i满足有k%i==0,就不是质数,否则就是 ...

求一个用c语言编程的一个程序。让输出一1000以内的全部素数
1、主函数中进行循环,从2到1000 2、如果当前循环的数是素数,就将其输出 判断一个数num是否是素数,可按照以下流程:1、循环,从2到num-1 2、如果当前循环的数能被num整除,则num不是素数 3、没有num能整除的数,表明num是素数 代码如下:include <stdio.h> int isPrime(int num);int main(...

c语言怎样求2到100之间的素数?
void main(){ int n=0, i, j,w,k;for(i=2;i<=1000; i++){ w=1;k=sqrt(i);for (j=2; j<=k; j++)if (i%j==0) {w=0;break;} if (w) { ++n;if (n%10==0) printf("%d\\n",i);else printf("%d\\t",i);} ...

刚学习C语言,不太懂,求大神帮编一个程序,求1000以内所有素数的和
int i,sum=0;for(i=2;i<=1000;i++)if(isprime(i)==1)\/\/是素数则加到变量sum上去 sum+=i;cout<<"1到1000之间的素数和为:"<<sum<<endl;}

求0~1000之间素数的个数及这些素数之和。
附:C语言编程 include <stdio.h> int is_prime_number(int n);int main(int argc, char const *argv[]){ int i ;int num[1000];int count = 0;for (i = 1; i <= 1000; ++i){ if(is_prime_number(i) == 1){ num[count++] = i;} } printf("1到1000有%d个素数,它们...

求C语言程序设计:输出2~1000内所有质数。要求:输出每行5个数,数与...
1000以内的话,每个数都不超过4位, 按照占5位或以上打印就行 printf("%5d",num);\/\/位宽5, 前面添空格, 要左对齐的话,后面添,用%-5d include <stdio.h> include <math.h> int IsPrim(int n){ int i,j;j=sqrt(n);for(i=2;i<=j;i++)if(n%i==0)return 0;return 1;} int ...

1000以内所有素数之和 C语言程序,请高手帮我编写下,谢谢啊!
include<stdio.h> void main(){ int a,i;long int sum=0;for(a=2;a<=1000;a++){ for(i=2;i<=a\/2;i++)if(a%i==0)break;if(i>a\/2)sum=sum+a;} printf("%ld",sum);getch();}

C++求2-1000之间的全部素数,以每行十个输出、 哎、 帮帮忙吧
include<stdio.h> int prime(int n){ int i;for(i=2;i<n;i++)if(n%i==0) break;if(i>=n) return 1;else return 0;} void main(){ int i,k=0;for(i=2;i<1000;i++)if(prime(i)){ printf("%3d ",i);k++;if(k%10==0) printf("\\n");} printf("\\n");} ...

用c语言求1000以内的素数···谢谢了···
int i,m;int flag;for(i=2;i<=1000;i++){ flag=1;for(m=2;m

c语言:输出1000以内所有的素数,并统计素数的个数,要求每行输出8个数...
\/\/输出1000以内的素数,统计素数的个数,要求每行输出8个数#include <stdio.h>int main(){int i;int count = 0; \/\/记录共有多少素数int count1 = 0; \/\/每8个素数就打一个回车int sushu(int i); \/\/判定素数的函数for (i = 2; i < 1000; i++) \/\/取2到999之间的素数{if (...

相似回答