C语言经典例题:素数判断
2012-03-14 17:28
197 查看
质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
初级版 _Bool Isprimer(unsigned n) { if(n<=1)return false; unsigned i,tem=sqrt(n)+1; for(i=2;i<=tem;i++) /*2也是素数*/ if(n%i==0)return false; return true; } 升级版 _Bool Isprimer(unsigned n) { if(n==2)return true; if(n<=1||n%2==0)return false; /*2以外偶数都不是素数*/ unsigned i,tem=sqrt(n)+1; for(i=3;i<=tem;i+=2) /*i==2的情况已经在前面判断过了,这里直接从3开始,且一个奇数*/ if(n%i==0)return false; /*且进入到这里的n都是奇数,奇数是不可能被偶数整除的,所以i每次增2*/ return true; }希望有更好的算法!
相关文章推荐
- c语言经典例题2
- 汇编语言-判断素数:找出前100以内的素数
- C语言经典例题及答案11
- 例题(4.2) 简单素数判断
- 【C语言经典例题//1//】
- C语言经典例题及答案8
- C语言经典例题100(68~82)
- 经典问题素数篇————————1、判断是n否为素数!
- C 语言:判断某个数的各位数字是否全为素数
- JAVA经典例题求素数
- C语言经典例题100(87~100)
- java经典算法2_判断素数
- 汇编语言: 判断素数
- 【C语言经典例题//2//】
- C语言经典例题及答案10
- 经典的判断伪素数
- c语言经典例题6
- 实训JAVA语言设计——产生一个2-K之间的随机整数,判断一个数是否是素数
- java经典算法_002判断素数
- 【C语言经典例题//3//】