現在ちょっと悩んでいるのは「でたらめ君」で、
>>73 のソースだとシードの関係か、
自己対戦の場合0点か5000点になります。で、

int _random(int round, int *own, int *opposite)
{
srand((unsigned)(time(NULL)%(round+1)));
return rand()%2;
}

見たくしてみたんですけど、毎回同じ囚人の総合得点の
結果でも2000点ぐらい差が出ます。こうなると順位が入れ替わってしまうので、
大会をさらに1000回やってその平均、とかなると面倒だなあ、
rand関数使うの禁止、にしようかなあ、とか考えますけどどうでしょうか?