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

举报
C语言入门到精通 发表于 2021/02/24 01:07:02 2021/02/24
【摘要】 例59:两个乒乓球队进行比赛,各出3个人。甲队为A,B,C,3人,乙对为X,Y,Z,3人,已抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比赛,C说他不和X,Z比赛,C语言编程程序找出3对赛手的名单。 解题思路:整个执行部分只有一个语句,所以只在语句的最后有一个分号。请读者弄清楚循环和选择结构的嵌套关系,题目给的是A,B,C,X,Y,Z,而程序中用了加撇号的字符常量‘...

例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对赛手的名单 mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:小林C语言,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/343637473

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。