写一个球素数的函数C语言 c语言求素数个数

求素数(C语言)用函数

#includestdio.h

成都创新互联公司是工信部颁发资质IDC服务器商,为用户提供优质的简阳服务器托管服务

int sushu(int z);/*函数声明最好放在外面,放到文件前端*/

void main()

{

int b,a;

printf("enter a date:\n");

scanf("%d",b);

a=sushu(b);

if(a==0||b==0) 

printf("no\n");

else 

printf("yes\n");

}

int sushu(int z)

{

int i , j;/*i和返回值要分开,i要做循环标尺的*/

for(i=2;iz;i++)

{

if(z%i==0) 

{

j=0;

break;/*一旦发现不是素数,跳出for循环*/

}

else 

j=1;/*如果用i,就是个死循环,如果是素数,每次你把i=1后for循环一直继续*/

}

return j;

}

用C语言编写一个程序,设计一个判断素数的函数

1.素数是一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;

2.在数据处理时只需要判读他的因子除了1和他本身就行了,而且只用计算到 这个数的开方就行了,因为后面的因子和前面的就会倒过来。如同 24 - 2 x 12 和 12 x 2 一样。

#includestdio.h

int IsPrime(int n)  // 判断是否为素数

{

if (n = 1) return 0;

if (n % 2 == 0) return n == 2; // 如果是偶数,只要不是2,其他都是非素数

for (int i = 3; ; i += 2)

{

if (i  n/i) break;  // 等价于 i*i  n, 不用开方

if (n % i == 0) return 0;

}

return 1;

}

int main()

{

int i, cnt = 0;

for (i = 1; i  100; i++)

{

if (IsPrime(i))

{

printf("%3d ", i);

if (++cnt%5 == 0)   // 每5个换行

printf("\n");

}

}

return 0;

}

求素数的C语言程序!

C语言-寻找素数

附代码:

#includestdio.h

#includemath.h

int main()//原理:设ab=c,ab,则有a根号cb。若设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;

}


新闻标题:写一个球素数的函数C语言 c语言求素数个数
链接地址:http://scyanting.com/article/doggiih.html