//求一个正整数的质因数。例如输入90,打印出90=2*3*3*5
//
#include<stdio.h>
int yinshu(int m);
int a[20];
int n=0;
int main() {
int m;
int n;
int i=0;
printf("输入一个数\n");
scanf("%d",&m);
n=yinshu(m);
while (a[i]!=0) {
printf("%d",a[i]);
i++;
}
printf("\n");
return 0;
}
int yinshu(int m){
int i;
for (i=2; i<=m; i++) {
if (m%i==0) {
if (m==i) {
printf("%d\t",i);
a[n]=i;
n=n+1;
return i;
}
else
printf("%d\t",i);
a[n]=i;
n=n+1;
return yinshu(m/i);
}
}
return 0;
}
版权声明:本文为weixin_42326230原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。