下記ソースコードが思うように動きません。
配列の中にいる変数Aを13、Bを04の間で動かしたいのですがデバックしてみると両方とも
-858993460
という値になっています。
A、Bはソースコード上の下記部分でしか使用していません。
A、Bの動きの破たんしている個所の解説をお願いしたいです。
##各変数について
各変数は
S[15]={2,2,2,2,2};
TM[4]={0};
P[4]={0};
T[4][5]={0};
J[4]={0};
で初期化しています。
#ソースコード
#define W(5)
int main()
{
.
.
.
M = (W) / 5;
if (((W) % 5) != 0) {
Rem2 = W % 5;
}
else
{
Rem2 = 0;
}
for (A = 1; A <= 3; A++) { do { if (M > 0) { TM[A] += (5 * 10) * 2; P[A] = 5; } else if (M == 0) { TM[A] += (Rem2 * 10) * 2; P[A] = Rem2; } else { break; } for (B = 0; B < P[A]; B++) { //ここが原因? T[A][J[B]] = S[J[B]]; } if (M > 0) { M--; } MF[A] = T[A][P[A] - 1]; if (MF[A] > 0) { TM[A] += ((MF[A] - 1) * 5) * 2; } else { break; } } while (0); if (M < 0) { break; } }
回答4件
あなたの回答
tips
プレビュー