#include<string.h>
using namespace std;
void path(int n,char s[20]);
int k=0;
void main()
{
int length = 0;
do
{
cout<<"請輸入路徑長度"<<endl;
cin>>length;
}while(length>9);
path(length, "");
}
void path(int n, char s[20])
{
char s1[20];
s1[0]='-';
s1[1]=n+48;//將整數轉換爲響應字符的ascii碼
s1[2]='\0';//做什麼用的,爲何要加?目的:告訴編譯器,這個字符已經結束,和下個字符不能相加
strcat(s1,s);
if(n>1)
path(n-2,s1);//遞歸
if(n>0)
path(n-1,s1);//遞歸
if(n==0)
{
cout<<k<<":0"<<s<<endl;
k++;
}
}