有趣生活

当前位置:首页>职场>c语言分解质因数的代码(c语言面试题-分解质因数)

c语言分解质因数的代码(c语言面试题-分解质因数)

发布时间:2024-01-24阅读(7)

导读题目要求:根据数论的知识可知任何一个合数都可以写成几个质数相乘的形式,这几个质数都叫做这个合数的质因数。例如24=2*2*2*3。把一个合数写成几个质数相乘....

题目要求:

根据数论的知识可知任何一个合数都可以写成几个质数相乘的形式,这几个质数都叫做这个合数的质因数。例如24=2*2*2*3。把一个合数写成几个质数相乘的形式表示,叫做分解质因数。对于一个质数,它的质因数可定义为它本身。编写一个程序实现分解质因数。

# include "stdio.h"int isPrime(int a){ /*判断a是否是质数,是质数返回1,不是质数返回0*/ int i; for(i=2;i<=a-1;i ) if(a % i == 0) return 0; /*不是质数*/ return 1; /*是质数*/}void PrimeFactor(int n){ /*对参数n分解质因数*/ int i; if(isPrime(n)) printf("%d ",n); else { for(i=2;i<=n-1;i ) if(n % i == 0) { printf("%d ",i); /*第一个因数一定是质因数*/ if(isPrime(n/i)) {/*判断第二个因数是否是质数*/ printf("%d ",n/i); break; /*找到全部质因子*/ } else PrimeFactor(n/i);/*递归地调用PrimeFactor 分解n/i */ break; } }}main(){ int n; printf("Please input a integer for getting Prime factor ") ; scanf("%d",&n); PrimeFactor(n); /*对n分解质因数*/ getche();}

运行结果:

c语言分解质因数的代码(c语言面试题-分解质因数)(1)

运行结果

欢迎分享转载→http://www.youqulife.com/read-228812.html

Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图