编写判断素数的函数,调用该函数求出1000以内的所有素数之和并输出

如题所述

/**
 * 编写判断素数的函数,调用该函数求出1000以内的所有素数之和并输出
 */
#include <stdio.h>

/**
 * 判断一个数是否是素数
 */
int is_prime_number(int value)
{
int i = 0;

if(value <= 1)
return 0;
for (i=2; i<value; i++)
{
if (value%i == 0)
{
return 0;
}
}
return 1;
}

int main(int argc, const char *argv[])
{
int i = 0, num = 0;
int sum = 0;

printf("\n1000以内的所有素数如下: \n"); 
for (i=0; i<1000; i++)
{
if (is_prime_number(i))
{
sum += i;
printf("%3d ",i);
if ((num+1)%10 == 0){
printf("\n");  //换行
}
num ++;
}
}
printf("\n\n");  //换行

printf("1000以内的所有素数之和为: %d !\n\n", sum);

return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-06-30
#include<stdio.h>
int isprime(int n)
{
int i;
for(i=2;i<n;i++)
if(n%i==0)return 0;
return 1;
}
void main()
{
int i,s=0;
for(i=2;i<=1000;i++)
if(isprime(i))
s+=i;
printf("1000内素数和:%d\n",s);}本回答被网友采纳
第2个回答  2013-05-30
#include<stdio.h>
int prine(int n)
{
int j;
for(j=2;j<=n/2;j++)
if(n%j==0)return 0;
return 1;
}
main()
{
int i,sum=0;
for(i=3;i<1000;i++)
if(prine(i)==1)
sum+=i;
printf("%d",sum);
}本回答被网友采纳
第3个回答  2013-05-30
for(i=3;i<1000;i++)改成for(i=2;i<1000;i++)
相似回答