C言語なら俺に聞け(入門篇) Part 28

このエントリーをはてなブックマークに追加
226デフォルトの名無しさん
>>207
#include <stdio.h>
#include <stdlib.h>

#define N 10
#define SEED 31415926
int main()
{
  static int a[N];
  int i, n;
  srand(SEED);
  for (i = 0; i < N; i++)
    a[i] = i;
  for (i = N ; i > 0; --i) {
    n = (int)((double)rand() / (RAND_MAX - 1) * i);
    printf("%d ", a[n]);
    a[n] = a[i - 1];
  }
  putchar('\n');
  return 0;
}
N-BASIC の時代にすでにあったようです。手元にはとある雑誌の1981年12月号があります。
関係ないですが、全角空白(&h80, &h41)はいやなんですが、どうすればいいんでしょうか?