您的位置首页百科知识

求素数的C语言程序!

求素数的C语言程序!

C语言-寻找素数

附代码:

#include<stdio.h>

#include<math.h>

int main()//原理:设ab=c,a<b,则有a<根号c<b。若设a恒小于根号c,则只需判断碰纳a是否为因数

{

int a, b;

printf("请按从小到大输入两个素数:"笑行没);

scanf_s("%d %d", &a, &b);

int n = 0,m=0,sum = 0;

double i, j;//i是从a到b的待筛选数,j是从2到根号i的除数,要判断j是否为i的因数

for (i = a; i <= b; i++)

{

m = 0;

int c = int(pow(i, 0.5));

for (j = 2; j <= c; j++)

{

if ((i / j - int(i / j)) == 0.0)

{

m++;//m是i被从2到根号i的j除了之后,商为带告整数,即发现j是i的因数的次数

}

}

if (m==0)

{

printf("找到素数:%d\n", int(i));

n++;

sum = sum + i;

}

}

printf("大于等于%d,小于等于%d的素数的个数为:%d\n", a, b, n);

printf("它们的和为:%d", sum);

return 0;

}