C语言 | 乒乓球比赛,编程找出3对赛手的名单

例59:两个乒乓球队进行比赛,各出3个人。甲队为A,B,C,3人,乙对为X,Y,Z,3人,已抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比赛,C说他不和X,Z比赛,C语言编程程序找出3对赛手的名单。

解题思路:整个执行部分只有一个语句,所以只在语句的最后有一个分号。请读者弄清楚循环和选择结构的嵌套关系,题目给的是A,B,C,X,Y,Z,而程序中用了加撇号的字符常量‘X’,‘Y’,‘Z’,这是为什么?这是为了在运行时能直接输出字符A,B,C,X,Y,Z,以表示3组对抗的情况。

源代码演示:

#include<stdio.h>//头文件 
int main()//主函数 
{
    
    
  char i,j,k;//定义字符变量 
  for(i='x';i<='z';i++)//i是a的对手;j是b的对手;k是c的对手 
  {
    
    
    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\nB--%c\nC--%c\n",i,j,k);//输出结果 
            }
          }
        }
      }
    }
  }
  return 0;//主函数返回值为0 
}

编译运行结果如下:

A--z
B--x
C--y

--------------------------------
Process exited after 0.08659 seconds with return value 0
请按任意键继续. . .

上述代码,小林用了最基础的方法去实现了,读者看着会很容易看明白,但也造成了嵌套了好几层循环,有心的读者可以自己试着优化一下。

C语言编程找出3对赛手的名单
更多案例可以go公众号:C语言入门到精通

猜你喜欢

转载自blog.csdn.net/weixin_48669767/article/details/112548501