程序代码:#include
#include
int main (void)
{
int input;
int sum;
int i;
int j;
int k;
int count = 0;
int *first;
int *last;
int *ary;
printf("Please insert an integer: ");
scanf("%d", &input);
ary = (int*)malloc(input * sizeof(ary));
first = (int*)malloc(input * sizeof(first));
last = (int*)malloc(input * sizeof(last));
for(i = 0; i < input - 1; i++)
ary[i] = i + 1;
for(i = 0; i < input; i++)
{
for(k = 0; k < input; k++)
{
sum = 0;
for(j = k; j < input - i; j++)
sum += ary[j];
if(sum == input)
{
first[count] = k;
last[count] = j;
count++;
}//end if
}// end for
}//end for
if(count == 0)
printf("NONE\n");
else
{
for(i = count - 1; i >= 0; i--)
{
for(j = first[i]; j < last[i]; j++)
printf("%d ", ary[j]);
printf("\n");
}//end for
}//end else
return 0;
}
这题好玩