誰かがこれがうまくいかない理由を説明できますか?
たとえば、私はこの配列を持っています:3 4 1 2 55 32 1111 53
出力は3 3 3 4 32 53 55 1111になります。
ありがとう!挿入の並べ替えを書く方法
void insertionSort(int arr[], int len) {
int i, j, tmp;
for (i = 1; i < len; i++) {
tmp = arr[i];
for (j = i - 1; j >= 0; j--) {
if (arr[j] > tmp) {
arr[j + 1] = arr[j];
}
else {
arr[j + 1] = tmp;
break;
}
}
}}
デバッガーについて注意してください。デバッガを使用します。デバッガを使用すると、プログラムで変数を見る*値を1歩歩くことができます。デバッガを使用する方が、StackOverflowに正しくポストして誰かがあなたのコードを検査したりデバッグしたりするよりも、しばしば速いです。デバッグセッションのテキストで投稿を編集してください。 –
上から外れると、あなたは決して 'arr [0]'に割り当てられません。それは正しいことではありません。 –
最高の結果を得るには、a [mcve]を流してください。スタックオーバーフロー問題の有無に関わらず、これを行う必要があります。なぜなら、MCVEを生成するために問題を分離する行為は、そのバギーの栄光の中で非常に多くの原因を明らかにするからです。 – user4581301