解题思路:用了点递归
注意事项:本应该有多解,但题目只要求一个解
参考代码:
#include<iostream> #include<cmath> using namespace std; void ss(int x); int main() { int a,b; cin>>a>>b; for(int i=a;i<=b;i++) { cout<<i<<'='; ss(i); cout<<endl; } } void ss(int x) { int a[1000]; int n=0; for(int i=2;i<=sqrt(x);i++) { if(x%i==0) { a[n]=i; n++; break; } } if(n==0) { cout<<x; } else { for(int j=0;j<n;j++) { cout<<a[j]<<'*'; ss(x/a[j]); } } return ; }
0.0分
1 人评分