求高手指点一道C语言问题(用数组做)

来源:百度知道 编辑:UC知道 时间:2024/05/17 18:53:10
两个乒乓球队比赛。
各出三人。
甲队为A、B、C三人,乙队为X、Y、Z三人。

已抽签决定名单。
有人向队员打听比赛的名单,A说他不和X比,C说他不和X、Z比。
请编写程序找出三对选手的名单。

弄那么复杂干嘛,看我的!又简单,又好懂!

#include<stdio.h>
void main()
{
char i, j, k;
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("\tA--%c\tB--%c\tC--%c\n", i, j, k);
}

main()
{
char i,j,k;/*i是a的对手,j是b的对手,k是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("order is a--%c\tb--%c\tc--%c\n",i,j,k);
}
}
}
}

这题我在刚才的那个里面已经答了。

这题是谭浩强版 C程序设计(第三版) 130页 6.15的原题。
答案在那本题解的47页