c语言新龟兔赛跑

以下是一个使用C语言编写的新的龟兔赛跑游戏:

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. int main() {
  5.     int distance, turtle_speed, rabbit_speed, turtle_time, rabbit_time, rabbit_lead;
  6.     srand(time(NULL)); // 随机数种子
  7.     // 初始化变量
  8.     distance = 100; // 赛跑距离为100米
  9.     turtle_speed = 1; // 乌龟速度为1米/分钟
  10.     rabbit_speed = 5; // 兔子速度为5米/分钟
  11.     turtle_time = 0; // 乌龟所用时间为0分钟
  12.     rabbit_time = 0; // 兔子所用时间为0分钟
  13.     rabbit_lead = 0; // 兔子领先距离为0米
  14.     printf("新龟兔赛跑游戏\n");
  15.     printf("赛跑距离: %d米\n", distance);
  16.     printf("乌龟速度: %d米/分钟\n", turtle_speed);
  17.     printf("兔子速度: %d米/分钟\n", rabbit_speed);
  18.     printf("开始赛跑!\n");
  19.     // 模拟赛跑过程
  20.     while (distance > 0) {
  21.         // 乌龟前进
  22.         turtle_time += 1; // 乌龟用时加1分钟
  23.         if (turtle_time == 60) { // 乌龟每60分钟走1米
  24.             turtle_time = 0;
  25.             distance--;
  26.         }
  27.         // 兔子前进
  28.         rabbit_time += 1; // 兔子用时加1分钟
  29.         if (rabbit_time == 60) { // 兔子每60分钟走5米
  30.             rabbit_time = 0;
  31.             distance -= rabbit_speed;
  32.         }
  33.         // 判断胜负
  34.         if (distance <= 0) {
  35.             break;
  36.         } else if (distance >= rabbit_speed) { // 如果兔子能够到达终点,则计算领先时间
  37.             rabbit_lead = rabbit_time + (distance / rabbit_speed) * 60 - turtle_time;
  38.         } else { // 如果兔子不能到达终点,则计算剩余距离和时间
  39.             distance -= rabbit_speed;
  40.             rabbit_lead = rabbit_time + (distance / rabbit_speed) * 60 - turtle_time;
  41.         }
  42.     }
  43.     // 输出结果
  44.     printf("赛跑结束!\n");
  45.     printf("乌龟所用时间: %d分钟\n", turtle_time);
  46.     printf("兔子所用时间: %d分钟\n", rabbit_time);
  47.     if (rabbit_lead > 0) { // 如果兔子领先,则输出领先时间,否则输出落败信息
  48.         printf("兔子领先乌龟%d分钟!\n", rabbit_lead);
  49.     } else {
  50.         printf("兔子落败!\n");
  51.     }
  52.     return 0;
  53. }

好的,以下是对该程序的进一步解释:

  1. 在程序的开始部分,我们引入了三个头文件,这些头文件提供了我们需要的一些基本功能:
  1. stdio.h:用于输入和输出操作,例如printf()scanf()函数。
    • stdlib.h:包含了一系列有用的函数和宏,例如rand()函数用于生成随机数。
    • time.h:提供了与时间相关的函数和数据类型,例如time()函数用于获取当前时间。
  1. 我们使用srand()函数初始化随机数生成器。这个函数需要一个种子值,我们使用当前时间作为种子值,这样每次运行程序时生成的随机数都会不同。
  2. 我们定义了一些变量来模拟赛跑的过程:
  1. distance:表示赛跑的距离,初始值为100米。
    • turtle_speed:表示乌龟的速度,每分钟走1米。
    • rabbit_speed:表示兔子的速度,每分钟走5米。
    • turtle_time:表示乌龟所用的时间,初始值为0分钟。
    • rabbit_time:表示兔子所用的时间,初始值为0分钟。
    • rabbit_lead:表示兔子领先的时间,初始值为0分钟。
  1. 在模拟赛跑的过程中,我们使用一个while循环来模拟乌龟和兔子前进的过程。循环条件是赛跑距离大于0米。在循环中:
  1. 乌龟每60分钟走1米,所以我们将turtle_time加1,然后判断是否走到了终点,如果走到了终点,就跳出循环。
    • 兔子每60分钟走5米,所以我们将rabbit_time加1,然后判断是否走到了终点,如果走到了终点,就计算领先时间,然后跳出循环。
  1. 最后,我们输出乌龟和兔子所用的时间以及兔子的领先时间。如果兔子领先,我们输出“兔子领先乌龟XX分钟!”,如果兔子落败,我们输出“兔子落败!”。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024-NeuDS-数据库题目集

一.判断题 1.在数据库中产生数据不一致的根本原因是冗余。T 解析&#xff1a;数据冗余是数据库中产生数据不一致的根本原因&#xff0c;因为当同一数据存储在多个位置时&#xff0c;如果其中一个位置的数据被修改&#xff0c;其他位置的数据就不一致了。因此&#xff0c;在数据…

Azure Machine Learning - 创建Azure AI搜索服务

目录 准备工作查找 Azure AI 搜索产品/服务选择订阅设置资源组为服务命名选择区域选择层创建服务配置身份验证扩展服务何时添加第二个服务将多个服务添加到订阅 Azure AI 搜索是用于将全文搜索体验添加到自定义应用的 Azure 资源&#xff0c;本文介绍如何创建Azure AI搜索服务 …

Python,FastAPI,mLB网关,无法访问/docs

根源就是js和ccs文件访问路由的问题&#xff0c;首先你要有本地的文件&#xff0c;详情看https://qq742971636.blog.csdn.net/article/details/134587010。 其次&#xff0c;你需要这么写&#xff1a; /unicontorlblip就是我配置的mLB网关路由。 app FastAPI(titleoutpaint…

做外贸的你崩溃过吗

某日&#xff0c;孔先生问我&#xff0c; 前几天的那个单子怎么样了&#xff1f;看你一会找工厂拍照片&#xff0c;一会找办公室录制视频&#xff0c;半夜还在拿着手机和客户打电话&#xff0c;现在怎么也不提这个进展了&#xff0c;我回答道&#xff1a;黄了。 此时孔先生一股…

短剧付费变现小程序源码系统+开通会员+在线充值 附带完整的搭建教程

大家好啊&#xff0c;今天小编来给大家分享一款短剧付费变现小程序源码系统。近年来&#xff0c;随着互联网技术的飞速发展&#xff0c;短剧成为了一个备受瞩目的领域。短剧以其简洁、紧凑的故事情节和制作周期短、传播速度快的特点&#xff0c;成为了越来越多人的选择。然而&a…

全国测绘资质管理信息系统测绘资质申报流程

讲解一期关于测绘资质申请如何操作&#xff0c;在哪操作的问题&#xff0c;想要知道的按以下流程操作即可 &#xff08;注&#xff1a;以下操作为资质系统操作&#xff0c;想要能把资质申请下来&#xff0c;还需满足以下要求&#xff0c;后面会和系统操作一起统一讲解&#xf…

项目管理体系文件代码评审规范

代码评审的目的&#xff1a; 1、在项目早期就能够发现代码中的BUG 2、帮助初级开发人员学习高级开发人员的经验&#xff0c;达到知识共享 3、避免开发人员犯一些很常见&#xff0c;很普通的错误 4、保证项目组人员的良好沟通 5、项目或产品的代码更容易维护 软件开发全文档获取…

党建信息管理系统源码 支持在线交党费 附带完整的搭建教程

传统的党建管理模式通常采用手工方式&#xff0c;不仅效率低下&#xff0c;而且容易出错。随着组织规模的扩大和党员数量的增加&#xff0c;这种管理方式已经无法满足现实需求。此外&#xff0c;传统的党建管理模式缺乏在线交党费功能&#xff0c;给党员带来不便。因此&#xf…

斐波那契数列数列系列问题详解

斐波那契数列数列是我们学习递归的入门问题&#xff0c;是一种非常经典的题型&#xff0c;也衍生出了一些更复杂的题型&#xff0c;这一节就让我们彻底理解斐波那契数列系列问题。 一、概念介绍 1、什么是斐波那契数列&#xff1f; 斐波那契数列&#xff08;Fibonacci sequenc…

芯片设计—低功耗isolation cell

&#xff08;一&#xff09;低功耗isolation cell的目的 低功耗架构设计需要前后端拉通规划&#xff0c;前端设计有PMU功耗管理单元&#xff0c;比如A模块电压常开&#xff0c;B模块电压可关断&#xff0c;那么请思考&#xff0c;当B模块关断电压后&#xff0c;B模块输出到A模…

案例025:基于微信小程序的移动学习平台的设计与实现

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

浪涌Surge整改:保护和优化电力系统!|深圳比创达电子EMC

一、浪涌现象简介 浪涌是一种在电气系统中常见的现象&#xff0c;其涉及电压、电流的突然增加&#xff0c;超过系统的正常操作范围。这可能是由许多因素引起的&#xff0c;如雷击、设备故障、或电网中的突然负荷变化。浪涌可能导致设备损坏&#xff0c;甚至可能危及人员安全。…

重磅发布,Whale 帷幄打出 AGI 场景化落地「组合拳」

11 月 23 日&#xff0c;「Whale 帷幄」举办了秋季发布会「AGI for Growth 释放增长的 AGI 力量」。 继今年年初提出「MarketingGPT」帮助品牌用 AGI 技术重塑工作流程和生产方式后&#xff0c;帷幄持续研磨技术与产品&#xff0c;聚焦垂类场景&#xff0c;打造「MarketingGPT …

护眼灯到底有用吗?真正可以护眼的护眼台灯推荐

中国消费者协会联合江苏省消费者权益保护委员会、浙江省消费者权益保护委员会和浙江台州市消费者权益保护委员会于今年上半年开展了读写台灯比较试验。结果显示&#xff0c;在73款样品中&#xff0c;仅12款样品各项测试指标良好。飞利浦、欧普、得力等品牌样品不合格。 面对市面…

微信小程序开发资源汇总

本文收集了微信小程序开发过程中会使用到的资料、问题以及第三方组件库。本文不是一篇关于如何学习微信小程序的入门指南&#xff0c;也非参考手册&#xff0c;只是一些资料的整理。 本仓库中的资料整理自网络&#xff0c;也有一些来自网友的推荐。 官方文档 小程序设计指南…

C语言贪吃蛇(有详细注释)

这个贪吃蛇是在比特特训营里学到的&#xff0c;同时我还写了用EasyX图形库实现的图形化贪吃蛇&#xff0c;含有每个函数的实现以及游戏中各种细节的讲解&#xff0c;感兴趣的可以去看一看。 贪吃蛇小游戏 实现效果 以下就是源码&#xff0c;感兴趣的小伙伴可以cv自己玩一玩改…

为什么Facebook运营需使用IP代理?罗拉ROLA详解有哪些美国IP代理好用?

随着互联网的快速发展和全球用户规模的不断增长&#xff0c;Facebook已成为了全球最大的社交媒体平台之一。然而&#xff0c;大批量地运营Facebook账号往往需要借助IP代理这一工具&#xff0c;提高账号的安全性和可靠性&#xff0c;使得运营Facebook更加流畅。那么Facebook为什…

百分点科技入选《2023年央国企数字化升级研究报告》

近日&#xff0c;艾瑞咨询发布了《2023年央国企数字化升级研究报告》&#xff0c;报告总结了央国企数字化升级的方向和特点&#xff0c;并重点研究了基础平台及关键技术工具、通用及综合型应用、重要配套建设等方面。报告指出&#xff0c;数据治理是央国企数字化升级过程中的重…

TensorFlow实战教程(二十五)-基于BiLSTM-CRF的医学命名实体识别研究(下)模型构建

这篇文章写得很冗余,但是我相信你如果真的看完,并且按照我的代码和逻辑进行分析,对您以后的数据预处理和命名实体识别都有帮助,只有真正对这些复杂的文本进行NLP处理后,您才能适应更多的真实环境,坚持!毕竟我写的时候也看了20多小时的视频,又写了20多个小时,别抱怨,加…

北邮22级信通院数电:Verilog-FPGA(11)第十一周实验(1)用JK触发器实现8421码十进制计数器

北邮22信通一枚~ 跟随课程进度更新北邮信通院数字系统设计的笔记、代码和文章 持续关注作者 迎接数电实验学习~ 获取更多文章&#xff0c;请访问专栏&#xff1a; 北邮22级信通院数电实验_青山如墨雨如画的博客-CSDN博客 目录 一.代码部分 1.1 JK_8421.v 1.2 JK_ff.v …