素数 和 算法的问题,
程序代码:
#include<stdio.h> bool IsPrime(int m) /*用于判断m是否是素数*/ { int i; for(i=2; i<m; i++) { if(0 == m%i) { return false; break; } if (i == m) return true; } } int main(void) { int k, i, j; scanf("%d",&k); //求这个数的素数的积 例如:12=2*2*3 15=3*5 if (IsPrime(k)) printf("这个是素数\n"); else { printf("这个%d有素数之积是:", k); for (j=0; j<k; ++j) { for (i=2; i<=k;++i) { if ( IsPrime(i) ) { if ( 0== k%i) { k/=i; printf("%d",i); printf("*"); } } } } } return 0; }昨天,论坛看到 一个素数
如何实现将任意一个整数分解为素数之积
最近学算术基本定理,想用C程序实现它,即输入任意正整数(>1),将该整数分解为素数之积,例如10=2*5,12=2*2*3,18=2*3*3,按类似格式输出结果。。想了很久没能做到完全分解,希望高手能给予指导,一起讨论,
写不太好,别人一会就写出来 ,我用一天 才写出,算法,用的代码太多,要减,怎 么一个减法,