C语言题目:两个乒乓球队进行比赛

来源:百度知道 编辑:UC知道 时间:2024/06/09 14:53:00
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单
加上注释哦!
谢谢了

因为此题数据少,所以可以用3个for遍历所有情况
char a[5];
char b[5]={'x','y','z')
for (int i=0;i<3;i++)
{
if (b[i]='x')//a不和x比赛
continue;
a[0]=b[i]
for (int j=0;j<3;j++)
{
if (j==i)//a,b不能和同一个人比赛
continue;
a[1]=b[j]
for (int k=0;k<3;k++)
{
if (j==i || j==k || k==i || c[i]=='x' || c[i]=='z')//c的对手不能与a,b中任意一个相同,且不能为x和z
continue;
a[2]=b[k];
printf("a vs %c",a[0]);
printf("b vs %c",a[1]);
printf("c vs %c",a[2]);
}
}
}

main()
{
char a,b,c,x,y,z,i,j,k;//i,j,k分别是a,b,c的对手
for(i='x';i<='z';i++)
for(j='x';j<='z';j++)
if(i!=j)
for(k='x';k<='z';k++)
{
if(i!='k' &&j!='k')
{
if(i!='x'&&k!='x'&&k!='z')
printf("a-%c