C语言不可不敲系列:跳水比赛排名问题

目录

1题干:

2解题思路:

3代码:

4运行结果:

5总结:


1题干:

5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果
A选手说:B第二,我第三;
B选手说:我第二,E第四;
C选手说:我第一,D第二;
D选手说:C最后,我第三;
E选手说:我第四,A第一;
比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。

2解题思路:

首先我们不知道名次问题,这时候我们就可以利用循环来做题,也就是利用穷举法来一个一个的尝试,把所有结果都尝试一遍就能找到满足题干条件的答案.

这个题我们可以对A,B,C,D,D都进行循环穷举,e的话可以用总名次(第一名+第二名+第三名+第四名+第五名等于15)去减去A,B,C,D的名次就可以知道E的名次,这个可以大大减少循环量.废话不多说,直接展示代码及其运行的结果.

3代码:

#include<stdio.h>
int main()
{int a,b,c,d,e;//定义5个人 for(a=1;a<=5;a++)//因为不确定5人的名次,所以要穷举法(循环),一个一个的尝试 {for(b=1;b<=5;b++){if(a==b) continue;//名次问题只能是一个人占一个位置,所以他们不可能相等 for(c=1;c<=5;c++){if(a==c||b==c) continue;//同理如上 for(d=1;d<=5;d++){if(a==d||b==d||c==d) continue;//同理如上 e=15-a-b-c-d;//这里可以用做减法来判断e的名次减少一层循环,15是因为1到5名相加的结果 if(a!=e&&b!=e&&c!=e&&d!=e)//同理如上 if(1==(b==2)+(a==3)&&(b==2)+(e==4)==1&&(c==1)+(d==2)==1&&(c==5)+(d==3)==1&&1==(e==4)+(a==1))//题干说每人说的话只对一般 printf("a是第%d名\nb是第%d名\nc是第%d名\nd是第%d名\ne是第%d名",a,b,c,d,e);//所以用关系判断句的结果来表示 }}}}return 0;
}

拆解分析:

<1>:首先对5人进行定义并开始循环,此时如果a==b就排除这种情况,因为名次问题一人只能占一个名次,一个名次也只能占一个人.

#include<stdio.h>
int main()
{int a,b,c,d,e;//定义5个人 for(a=1;a<=5;a++)//因为不确定5人的名次,所以要穷举法(循环),一个一个的尝试 {for(b=1;b<=5;b++){if(a==b) continue;//名次问题只能是一个人占一个位置,所以他们不可能相等 

<2>接着往下进行循环.

	        for(c=1;c<=5;c++){if(a==c||b==c) continue;//同理如上 for(d=1;d<=5;d++){if(a==d||b==d||c==d) continue;//同理如上 e=15-a-b-c-d;//这里可以用做减法来判断e的名次减少一层循环,15是因为1到5名相加的结果 

<3>这里是对题干条件的判断,利用关系表达式,因为题干说每人说的两句话只对一半,所以利用判断语句并令其==1即可.

					if(a!=e&&b!=e&&c!=e&&d!=e)//同理如上 if(1==(b==2)+(a==3)&&(b==2)+(e==4)==1&&(c==1)+(d==2)==1&&(c==5)+(d==3)==1&&1==(e==4)+(a==1))//题干说每人说的话只对一般 printf("a是第%d名\nb是第%d名\nc是第%d名\nd是第%d名\ne是第%d名",a,b,c,d,e);//所以用关系判断句的结果来表示 
4运行结果:

5总结:

人贵有恒,坚持练习一定有所进步.

若想练习C语言的习题,可以去我主页逛一逛,比如说:

【c趣编程】输入一个整数,判断其有几位-CSDN博客

感谢各位的阅读,以上就是“C语言怎么解决跳水比赛排名问题”的内容了,经过本文的学习后,相信大家对C语言这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是CSDN杰克尼,小编将为大家推送更多相关知识点的文章,欢迎关注!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/179424.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redhat Linux v8.2 实时内核环境配置及参数调优

Redhat-Linux V8.2 实时内核环境配置及参数调优 -------物理机 & 虚拟机 一、前言 本文档包含有关Redhat Linux for Real Time的基本安装和调试信息。许多行业和组织需要极高性能的计算&#xff0c;并且可能需要低且可预测的延迟&#xff0c;尤其是在金融和电信行业中。延…

docker安装MongoDB数据库,并且进行密码配置

很美的一首小诗> 我在外面流浪&#xff0c;回来时 故乡瘦了一圈—— 墩子叔走了&#xff0c;门前的池水 干了一半。 屋后驼背的柳树 头发散落了一地&#xff0c; 老房子蹲在坟边&#xff0c;屋顶的白云 仍在风中奔跑。 安装配置 要在Docker中安装MongoDB并启用远程连接&…

微信小程序相机相册授权后,需要重启客户端才能正常调用相机,无法调起窗口选择图片,无反应解决方案

最近微信小程序很多功能突然不能使用&#xff0c;本篇针对无法调起相册进行说明 解决方案 检查小程序隐私协议是否配置&#xff0c;操作步骤这里不在详细说明&#xff0c;点击教程按照上面的教程&#xff0c;找到入口后点击完善或者更新 选择选中的照片或视频这个权限要申请 之…

Behave介绍和快速示例

Behave是一个用于行为驱动开发 (Behavior-Driven Development, BDD) 的 Python 库。使用 Behave&#xff0c;可以编写自然语言格式的使用场景来描述软件的行为&#xff0c;然后用 Python 实现这些场景下的步骤&#xff0c;形成可直接运行的测试。 Behave的目标是帮助用户、开发…

LeetCode【41】缺失的第一个正数

题目&#xff1a; 分析&#xff1a; 第i个位置的数&#xff0c;如果再数组 0到length-1范围内&#xff0c;则将其放到对应的位置&#xff1b; 再遍历一遍数组&#xff0c;找到第一个不在位置i的正数数字&#xff0c;即为所求 思路&#xff1a;https://blog.csdn.net/weixin_45…

打开GeoTIFF文件失败:Unknown field with tag

用QGIS输出的数据类型为UInt16的TIFF文件&#xff0c;无法在GIMP中打开。 GIMP消息提示&#xff1a; 调查 用ImageMagick打开TIFF文件&#xff0c;虽然会出现警告&#xff0c;但是最终还是打开了&#xff1a; 在ImageMagick中重新保存后&#xff0c;就可以用GIMP打开了。使用…

vue-router配置

1、路由安装 npm install vue-router4 2、创建router目录 3、编辑文件且引入router包 4、main.js引入

qtcreator中其他控件的使用

scroll area 是 Tool Box是 tabwidget是网页 这三个可以用进行连接 用按钮实现切换 combo box的使用 使用label添加图片动图

SOLIDWORKS Flow Simulation阀门内流体仿真

Flow Simulation 导读 阀门作为输送系统中的控制设备其主要功能是接通管路中的流体介质,又或是调节流体的流量、压力等&#xff0c;在阀门的设计中&#xff0c;流量系数Cv,Kv&#xff0c;以及流阻系数都是基本参数&#xff0c;本节将讲解通过SOLIDWORKS Flow Simulation在三维…

SDL2 播放音频数据(PCM)

1.简介 这里以常用的视频原始数据PCM数据为例&#xff0c;展示音频的播放。 SDL播放音频的流程如下&#xff1a; 初始化音频子系统&#xff1a;SDL_Init()。设置音频参数&#xff1a;SDL_AudioSpec。设置回调函数&#xff1a;SDL_AudioCallback。打开音频设备&#xff1a;SD…

黑马程序员微服务 分布式搜索引擎3

分布式搜索引擎03 0.学习目标 1.数据聚合 **聚合&#xff08;aggregations&#xff09;**可以让我们极其方便的实现对数据的统计、分析、运算。例如&#xff1a; 什么品牌的手机最受欢迎&#xff1f;这些手机的平均价格、最高价格、最低价格&#xff1f;这些手机每月的销售…

【linux】htop 命令行工具使用

htop是一个跨平台的交互式流程查看器。 htop允许垂直和水平滚动进程列表&#xff0c;以查看它们的完整命令行和相关信息&#xff0c;如内存和CPU消耗。还显示了系统范围的信息&#xff0c;如负载平均值或交换使用情况。 显示的信息可以通过图形设置进行配置&#xff0c;并且可…