重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

c语言中的prime函数 c语言 prime

C语言中prime的作用

1、一般而言,prime的作用就是判断一个数是否为素数(也称“质数”)。各种函数是指自己定义的函数还是库函数?若是库函数,这就需要自己去看相关资料掌握。若是自己定义的函数,那作用自己应该清楚不过了。

成都创新互联是一家专业提供江源企业网站建设,专注与成都网站建设、网站建设、H5高端网站建设、小程序制作等业务。10年已为江源众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。

2、例如:

#include stdio.h

int IsPrime(int n)

{

if (n = 1) return 0;

if (n % 2 == 0) return n == 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()

{

for (int n = 100; n = 300; n++)

if (IsPrime(n))

printf("%4d", n);

return 0;

}

C语言:函数prime判断一个不小于3的整数是否为素数,若是素数,返回1,否则返回0,主函数调用该函数并输出素数

#include stdio.h

#include math.h

int prime(int x)

{

int i;

for(i=2;i=(int)sqrt(x);i++)

{

if(x%i == 0)

{

break ;

}

}

if(i(int)sqrt(x))

{

return 0;

}

else

{

return 1;

}

}

int main(int argc,char *argv[])

{

int m;

while(1)

{

printf("m=");

scanf("%d",m);

if(m3)

{

printf("The End.\n");

continue ;

}

if(prime(m) == 0)

printf("%d is prime number.\n",m);

else

printf("%d is not prime number.\n",m);

return 0;

}

}

C语言中if (prime(i))是什么意思

按照我的理解

你的prime()函数是判断素数的函数

如果是素数就返回1

不是素数返回0

那么你的if语句实际就是来判断prime(i) 是否等于0

那么你的if语句应该为if(prime(i)!=0)

我的理解就是这样

用C语言编写自定义函数prime(int x),判断x是否为素数。

#include

"stdio.h"

#include

"math.h"//判断一个整数是否为素数

bool

prime(int

x)

{

int

i;

for(i=2;i=

sqrt(x);i++)

{

if(x%i==0)

return

false;

}

return

true;

} //判断一个整数(1位或多位)是否每一位都是素数

bool

allPrime(int

a)

{

if(prime(a%10))

//如果个位是素数

{

a=a/10;

return

allPrime(a);

}

else

return

false;

}//

打印出1-5000内满足题意的素数

void

printPrime()

{

int

i;

int

a=0;

for(

i=11;i5000;)

//

1-9

不用再判断了,只有一位。10和5000很明显也不用去判断了,不是素数

{

if(prime(i))

//

如果i是素数,判断个位是不是素数,如果个位不是,不满足第二个条件

{

if(prime(i%10))

//判断个位

{

a=i/10

;

//a就是去掉个位后的数

if(prime(a))

//判断a

是否是素数,如果是,再判断a每一位是否是素数

{

if(allPrime(a))

printf("%d\n",i);

} }

}

i+=2;

}

}int

main()

{

printPrime();

}


名称栏目:c语言中的prime函数 c语言 prime
网站地址:http://cqcxhl.cn/article/dodciej.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP