将一个数分解质因数(初级篇)
2017-02-27 22:46
232 查看
如何将一个数分解质因数呢?
就是直接一个for循环下标i从2开始如果这个数能整除i就不断整除i然后记录,直到这个数为1时停止这样就可以达到分解质因数的目的了。
代码如下:
这种算法在遇到大数是就会变得非常的慢。
就是直接一个for循环下标i从2开始如果这个数能整除i就不断整除i然后记录,直到这个数为1时停止这样就可以达到分解质因数的目的了。
代码如下:
#include<stdio.h> #include<string.h> #include<math.h> int main(void) { int n,i,j,k,a; int ans[1000],top; while(~scanf("%d",&n) && n >= 0) { top = 0;a = n; for(i=2;i<=n;i++)//这里不能循环到a,因为a在循环里面发生变化。 { while(a % i == 0)//如果能整除就一直除下去 { ans[++top] = i; a /= i; } } printf("%d = ",n); for(i=1;i<top;i++) printf("%d * ",ans[i]); printf("%d\n",ans[top]); } return 0; }
这种算法在遇到大数是就会变得非常的慢。
相关文章推荐
- [Java] 练习题004: 将一个正整数分解质因数
- [Java] 练习题004: 将一个正整数分解质因数
- 笔试面试3 将一个数分解成质因数的形式以及如何判断一个数是否是质数
- vickate_将一个正整数分解质因数
- 将一个正整数分解质因数
- 一个线性时间复杂度的质因数分解函数(查找全部的素数、得到全部的质因数分解个数)
- 算法:把一个整整数分解为质因数
- 统计一个数分解质因数中不同因子的个数
- 统计一个数分解质因数中不同因子的个数
- java一个数分解的质因数java
- c语言:将一个正整数分解质因数
- 将一个正整数分解质因数
- Java将一个正整数分解质因数相乘的形式
- 统计一个数分解质因数中不同因子的个数
- 将一个正整数分解质因数
- [Java] 练习题004: 将一个正整数分解质因数
- 将一个正整数分解质因数
- 【程序14】将一个正整数分解质因数
- 每日一篇:将一个正整数分解质因数
- 将一个正整数分解质因数