这么个小东西哪要画图辅助分析。
昨天中午看到帖子,感觉就是个递归因数分解的题,类似于找零钱组合,下午打麻将,晚饭后被老婆替下,玩游戏、看论坛,看到你回帖,就边玩游戏边构思,9:30开写,再花10分钟调试成功,估计带构思一起不到一小时吧。
昨天中午看到帖子,感觉就是个递归因数分解的题,类似于找零钱组合,下午打麻将,晚饭后被老婆替下,玩游戏、看论坛,看到你回帖,就边玩游戏边构思,9:30开写,再花10分钟调试成功,估计带构思一起不到一小时吧。
#include <stdio.h> void ff(int a[],int n,int p) { //递归显示所有因数分解算式 int i; i=p>0?1:0; //第一次显示因数1 for(;i<p;i++)printf("%d * ",a[i]); printf("%d * %d\n",a[i],n); //显示算式 if(a[p]*a[p]>n)return; for(i=p>0?a[p]:2;i*i<=n;i++) { if(!(n%i)) { a[++p]=i; //存储因数 ff(a,n/i,p); //递归调用 p--; //回溯,剪枝 } } } void main() { int n,a[100]; scanf("%d",&n); a[0]=1; ff(a,n,0); }