他这个不对,N支队伍,单循环应该有(N-1)*N/2场比赛
叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
我编了个程序,可以完成你说的功能!
代码如下:
#include <stdlib.h>
#define N 10
main()
{
int team[N];
int i,t1,t2;
for(i=0;i<N;i++)
team[i]=1; \\初始化队伍状态
srand(time(NULL));
for(i=0;i<N/2;i++)
{
t1=t2=-1;
while (t1==-1)
{
t1=(rand()+N)%N; \\选择队伍比赛
if (team[t1]==0) \\判断队伍是否比赛
t1=-1; \\重新挑选队伍
else
team[t1]=0; \\标记t1比赛
}
while (t2==-1)
{
t2=(rand()+N)%N;
if (team[t2]==0) t2=-1 ;
else
team[t2]=0;
}
printf("%c Vs %c\n",t1+65,t2+65);\\显示比赛队伍
}
printf("\n") ;
}
[此贴子已经被作者于2006-6-5 13:02:03编辑过]
N=10的怎么改?