C语言将一个正整数分解质因数代码及介绍
发布时间:2021-11-12 14:15:40 所属栏目:教程 来源:互联网
导读:将一个正整数分解质因数。例如:输入888,打印出888=2*2*2*3*37。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: 如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 如果nk,但n能被k整除,则应打印出k的
将一个正整数分解质因数。例如:输入888,打印出888=2*2*2*3*37。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: 如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 如果n>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 代码实现: #include <stdio.h> int main(){ int n; // 用户输入的整数 int i; // 循环标志 printf("输入一个整数:"); scanf("%d",&n); printf("%d=",n); // n>=2才执行下面的循环 for(i=2; i<=n; i++){ while(n!=i){ if(n%i==0){ printf("%d*",i); n=n/i; }else break; } } printf("%dn",n); return 0; } 运行结果: linuxidc@linuxidc:~/www.linuxidc.com$ ./linuxidc.com 输入一个整数:888 888=2*2*2*3*37 linuxidc@linuxidc:~/www.linuxidc.com$ ./linuxidc.com 输入一个整数:999 999=3*3*3*37 ![]() (编辑:江门站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |