ポインタの値をバブルソートで並べ替えたい
C言語でポインタで定義した値を昇順に並べ替えたいので,バブルソートの関数を作成しています.
現状では,下記の関数を作成しましたが,ポインタの書き換えができていないためか元の値とは関係ない数値(0.00,-737.05,67662660000000000.00など)が出力されます.
やりたいことは「一つのポインタで定義している全ての値を昇順に並べ替える」ということなので,
下記コードやバブルソートと異なる方法でも結構です.
ご教授頂けますでしょうか.
void BubbleSort(int N,float *data) //N:データ数, *data:並べ替えたいデータ(グローバル変数)
{
int i,j;
float temp;
for(i=0; i<N-1; i++) { //データを最初から見ていく
for(j=N-1; j>i; j--) { //データを最後から見ていく
if(*(data+j) < *(data+j-1)) { //大きい値を見つけたら
temp = *(data+j); //データを入れ替える
*(data+j) = *(data+j-1); // ↓
*(data+j-1) = temp; // ↓
}
}
}
}