c 求素数的一般方法

来源:互联网 发布:手机扫描条码软件 编辑:程序博客网 时间:2024/04/30 09:44
#include <stdio.h>#include <stdlib.h>int isPrimeNum(unsigned int pn){unsigned int i = 3;unsigned int max = pn / 2;//一个数不可能被一个大与自己1/2大小的整数整除if(pn == 2){return 1;}else{if(pn % 2 == 0){return 0;}while(i < max){int mod = pn %i;//printf("%d mod %d = %d\n", pn, i, mod);if(pn % i == 0){//被整除return 0;}i+=2;}}return 1;}void main(){unsigned int pn = 2;printf("int size:%d\n", sizeof(pn));while(pn < (unsigned int)0xFFFFFFFF){//printf("processing %d\n", pn);int isp = isPrimeNum(pn);//printf("%d isPrimeNum %d\n", pn ,isp);if(isp){printf("%d \n", pn);}else{//printf("//%d \n", pn);}pn++;}}

0 0
原创粉丝点击