我想用矩陣做一個程序。在四個數字中,只有第一個少於1.當第一個矩陣完成時,只有第二個矩陣少於1.並且結束。 0號碼是不允許的。C代碼不顯示正確的東西
例如,當我運行代碼,需要返回此:
[2][1][3][3]
[1][1][3][3]
[1][3][3]
[3][3]
[2][3]
[1][3]
[3]
[2]
[1]
但不是與此代碼發生的事情:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int fila[4], var;
for (var=0;var<4;var++) {
fila[var]=0;
srand(rand());
fila[var]=rand()%3+1;
printf("[%d]",fila[var]);
fila[0]=fila[0]-1;
}
system("pause>NULL");
while(fila[0]>0)
{
printf("[%d][%d][%d][%d]\n",fila[0],fila[1],fila[2],fila[3]);
fila[0]--;
system("pause");
}
fila[1]=fila[1]-1;
while(fila[1]>0)
{
printf("[%d][%d][%d]\n",fila[1],fila[2],fila[3]);
fila[1]--;
system("pause");
}
fila[2]=fila[2]-1;
while(fila[2]>0)
{
printf("[%d][%d]\n",fila[2],fila[3]);
fila[2]--;
system("pause");
}
fila[3]=fila[3]-1;
while(fila[3]>0)
{
printf("[%d]\n",fila[3]);
fila[3]--;
system("pause");
}
return 0;
}
什麼我失蹤? 謝謝。
該代碼打印:
[2][1][2][1]
[1][1]
爲什麼不使用像'fgetc(stdin)'這樣的跨平臺解決方案而不是使用'system(「pause」)'? –
不錯!但是沒有解決問題 – ignaces
這就是爲什麼我使用了評論,而不是答案。 –