>>543
>student *x[]
>int buckets[M]
>x[j--] = &buckets[i];

この辺は聞く前に自分で気がついてほしいな。
たぶんどこかのサイトからコピペしたんだろうけど、
何をしているかを理解してから使う方が良いと思う。