#include
#include
int isPrime(int n) ///是素数返回1,否则返回0
{
int i,k;
k = (int)sqrt(n);
for(i = 2; i <= k;i++)
{
if(n % i == 0)
break;
}
if(i > k)
return 1;
else
return 0;
}
void main()
{
int n,i,k,sum=0;
printf("输入大于等于1的整数:n\n");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
if (isPrime(i)==1)
{
sum+=i;
}
}
printf("%d",sum);
}
#include
int isprime(int k)
{
int i;
for(i=2;i*i<=k;i++)//这个比较简单通过i*i<=k 来求k的开方i
//2*4=8, 只要判断2和3就可以判断他是否为素数,因为判断了2是否为因素就知道8/2=4为8的/
/////因/素
{
if(k%i==0)
return 0;
}
return 1;
}
int main()
{
int i, n, sum=0;
scanf("%d", &n);
for(i=2;i<=n;i++)
{
if(isprime(i))
sum+=i;
}
printf("%d", sum);
return 0;
}
返回bool比较方便吧
bool isprime(int k){
int j,i=k/2;
for(j=2;j<=i ; j++)
if(k%j==0)
return false;
return true;
}