该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
int main()
{int n,j,K;
int a[100];
printf("Please input a integer:");
scanf("%d",&n);
printf("%d=%d\n",n,n); // 直接先输出n=n方便下面的运算
for (int i=k;i<=n;i++) //i为拆分成几个数
{
a[0]=n-j*(i-1); //
a[1]=j; //
if(a[0]>=j) //必须后一个小于前一个
printf("%d=%d+%d\n",n,a[0],j); //把n=(n-j)+j在第一层输出 为以后的分层做个铺垫
while (a[0]>=a[1]) //拆分
{
printf("%i = ",n); //输出“n=”
printf("a[0] + ",a[0]); // 输出”a[0]+”
printf("%d",n-a[0]-j*(i-2)); //输出” ”
for(int k=2;k
printf("+ %d",j); //输出“+j”
printf("\n");
//cout<
a[0]=a[0]-1; // 进行叠加继续进行拆分
a[1]=a[1]+1;
}
}
}
}