プロが教える店舗&オフィスのセキュリティ対策術

アルゴリズムの勉強をしているものです。挿入法をCで実装してみたのですがうまくいきません 汗
プログラムは6個の配列に任意の数を入力してそれをソートするものです。
実行結果が以下のようになりうまくいきません。自分ではどこがおかしい
原因かわからないので教えてください。

a[0]:4
a[1]:2
a[2]:3
a[3]:1
a[4]:5
a[5]:6
4 2 3 1 5 6・・をソートしますか? Yes:0 No:1 ---
0
2 3 1 4 5 6

////*挿入法*////

#include <stdio.h>

void insertion-sort(int a[],int n){

int i,j,t;

for(i=1;i < n;i++){
j = i;

while(a[j-1] > a[j]){
t = a[j];
a[j] = a[j-1];
a[j-1] = t;
j--;
if(j==0) break;
}
}
}
int main(void)
{
int k,j,sort[6];



for(k=0;k < 6;k++)
{printf("sort[%d]:",k); scanf("%d",&sort[k]);}

for(k=0;k < 6;k++)
printf("%3d",sort[k]);

puts("ソートしますか? Yes:1 No:0 ///");

scanf("%d",&j);

if(j==1){
insertion-sort(sort,6);
for(k=0;k < 6;k++) printf("%3d",sort[k]);

}
putchar('\n');

return(0);
}

A 回答 (1件)

>4 2 3 1 5 6・・をソートしますか? Yes:0 No:1 ---


>0

>if(j==1){
>insertion-sort(sort,6);

上記のとおり、実行例とソースに食い違いがあります。
何を信頼すればよいかわかりません。
実行例とソースの正確な内容を示してください。
    • good
    • 0
この回答へのお礼

すみません同じファイルを二つののフォルダに保存していたらしく。
別のファイルをコンパイルしていました。なので0でも実行されたみたいです。ソートは確認したらきちんとと実行されました。

お騒がせしてすみません。。

お礼日時:2009/10/09 16:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!