こんにちは私のプログラムで助けが必要です。コードの一部が期待どおりに動作していないようです:配列内の要素を比較中にプログラムがクラッシュする
void up(int pole[4][4])
{
int i,j;
for (i = 3; i >= 1; i--)
{
for (j = 3; j >= 0; i--)
{
if (pole[i][j] == pole[i-1][j])
{
pole[i-1][j] += pole[i][j];
pole[i][j] = 0;
}
}
}
system("cls");
for (i = 0; i < 4; i++)
{
for(j = 0; j < 4; j++)
{
printf("%d ", pole[i][j]);
}
printf("\n");
}
}
私はこのようなスイッチで関数を呼び出すとき:私はちょうど私のプログラムのクラッシュで終わる
switch(keynumber)
{
case 119: //w
up(base);
break;
。 私がこれをやっているのは、コンソールで2048ゲームを作りたいので、最初に配列の2つのランダムな要素が2番となる配列を作成し、次にどのキーを押し込むかによってこれらの要素を比較します。
for(j = 3; j> = 0; i - ) ':' i - ' - ' 'j - ' – BLUEPIXY
yeh @BLUEPIXYは言った、あなたはJではなく、無限ループとなります。 – D3181
VTCが誤字... –