题目如下:

代码如下:
#include <iostream>
#include <cmath>
using namespace std;
void out1(int a)
{
int t1,t2;
if(a==1)
{
cout<<"2(0)";
return;
}
t1=int(log(a)/log(2));
t2=a-pow(2,t1);
cout<<"2";
if(t1!=1)
{
cout<<"(";
out1(t1);
cout<<")";
}
if(t2!=0)
{
cout<<"+";
out1(t2);
}
}
main()
{
int a;
cin>>a;
out1(a);
}
运行结果如下:

还有一个:

原文:https://www.cnblogs.com/wanjinliu/p/11385452.html