を発電機Iは、Cコードのこの単純な部分をデバッグして助けを求めるしたい:Cデバッグ変動が
void generator (int place, char *array, int n, int lol){
int i;
char c[6]={'1','0','+','-','*','/'};
if(n==0){
printf("%s\n",array);
return;
}
for(i=0; i<6; i++){
if (lol==0){
if (i>1) break;
array[place]=c[i];
lol=1;
generator(place+1, array, n-1, lol);
}
if(lol==1){
array[place]=c[i];
if(i>1){
lol=0;
generator(n+1, array, n, lol);
}
else{ lol=1;
generator(place+1, array, n-1, lol);}
}
}}
関数をn N-1に0によって分離され、1と0を含む文字列を生成するようになっています例えば、オペレータ のn == 3の場合、出力は次のようになります。
111
1+11
11+1
1+1+1
1*11
11*1
1*1*1
....
0/00
00/0
0/0/0
000
私は初心者プログラマですので、任意のヒントをいただければ幸いです。
あなたのコードには、変数 '' lol' 'がありますが、その名前と目的は分かりません(少なくとも私はそれを調べることはできません。 –