质数函数c语言 质数函数c语言怎么写

C语言的判断质数函数

这是我以前写过的判断质数的程序,希望对你有帮助。

创新互联是专业的交口网站建设公司,交口接单;提供网站建设、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行交口网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

#includestdio.h

int

prime(int

a)

{

int

i;

for(i=2;i=a/2;i++)

{

if(a%i==0)

break;

}

if(ia/2)

return

1;

else

return

0;

}

int

main(void)

{

int

x;

printf("请输入一个整数:");

scanf("%d",x);

if(prime(x))

printf("%d为素数\n",x);

else

printf("%d不是素数\n",x);

}

主要是加了break

C语言求1到n所有质数

#includestdio.h

int main()

{ int i,j,n,m;

scanf("%d",n);

for(m=0;n;n/=10)m=m*10+n%10;

if(m1)printf("2 ");

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

{ for(j=3;j*j=i;j+=2)

  if(i%j==0)j=i;

if(j*ji)printf("%d ",i);

}

return 0;

}

C语言求质数

红框里的代码,加上那个i++的for循环,其逻辑是:

从2开始,遍历所有小于n的整数,

只要存在一个整数可以被n整除(即余数为0),则可判断n为合数.

若从2到n-1范围内,不存在可整除n的数,则判断n为质数.

还有 for(int .......)这种定义变量的写法,要C99才支持,现在很多编译器默认C89标准,或者不支持C99标准,这样写容易出错.

第一个for循环里面,直接把n=0,1,2的情况跳过了.既然这样,变量n直接把初值赋为3不就好了,赋值0干嘛.

第二个for循环里面,判断到isqrt(n)就可以了,还有更简单的求质数算法,感兴趣可以百度.


当前文章:质数函数c语言 质数函数c语言怎么写
当前URL:http://azwzsj.com/article/dddpejg.html