-3
這段代碼有什麼問題? while循環部分不起作用。 if語句是不夠的,終止while循環C-插入排序
int main(void) {
int data[SIZE] = { 12,2,5,8,2,45,89,0,12,4 };
int i, j, tmp;
for (i = 0; i < SIZE-1; i++) {
j = i + 1;
tmp = data[j];
while (j > 0){
if(data[j-1] > tmp){
data[j] = data[j - 1];
j--;
}
}
data[j] = tmp;
}
for (i = 0; i < SIZE; i++)
printf("%d, ", data[i]);
return 0;
}
您的調試工作在哪裏? –
請一直顯示您的研究成果。請先閱讀[問]頁面。 –
並學習如何在這裏使用標記。 – Olaf