69,371
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int is_prime(int num);
int main(void)
{
#if 1
int m, n, cnt = 0, sum = 0;
int i;
scanf("%d%d", &m, &n);
if (m < n)
return 0;
for (i = 2; i < 200; i++)
if (is_prime(i)) {
printf("%d\n", i);
cnt++;
if (cnt > m)
break;
if (cnt >= n)
sum += i;
}
printf("sum = %d\n", sum);
#else
int data[200],i,n,m,dataNumber=2,sum=0;
for(i=0;i<
200;i++)
{
if(dataNumber=2)
{
data[i]=dataNumber;
dataNumber++;
}
else
{
data[i]=dataNumber;
dataNumber=dataNumber+2;
}
}
scanf("%d%d",&n,&m);
for(n<=m;n++;)
{
sum=sum+data[n];
}
printf("%d\n",sum);
#endif
return 0;
}
/*check prime */
int is_prime(int num)
{
int i;
int len = sqrt(num) + 1;
for (i = 2; i< len; i++)
if (num % i == 0)
break;
if (i >= len)
return 1;
else
return 0;
}
参考一下吧
#include <stdio.h>
int judgePrime(int num); //这是用来判断是否是素数的
int main()
{
int n = 1, m = 9, sum = 0;
for(int i = n; i <= m ; i++)
{
if( judgePrime(i))
{
printf("%d\n",i);
sum = sum + i;
}
}
printf("所有的素数的和是%d\n",sum);
}
int judgePrime(int num) //判断素数的函数的实现
{
int i = 2,j = num;
for( i ; i < j ; i++)
{
if( num % i == 0 )
{
return 0;
}
}
return 1;
}