从键盘任意输入一个整数n,编程计算并输出1~n之间的所有素数之和。
函数原型:int IsPrime(int x);
函数功能:判断x是否是素数,若函数返回0,则表示不是素数,若返回1,则代表是素数
程序运行结果示例1:
Input n:8↙
sum=17
程序运行结果示例2:
Input n:10↙
sum=17
程序运行结果示例3:
Input n:-12↙
sum=0
#include <stdio.h>
#include <math.h>
int IsPrime(int x)
{
for (int i = 2; i <= sqrt(x); i++)
{
if (x % i == 0)
{
return 0;
}
}
return 1;
}
int main()
{
int n = 0;
int sum = 0;
printf("Input n:");
scanf("%d",&n);
for(int i = 2; i <= n; i++)
{
if (IsPrime(i) == 1)
{
sum += i;
}
}
printf("sum=%d\n",sum);
return 0;
}