c语言模拟(龟兔赛跑)

一笑奈何 提交于 2020-02-06 06:03:49

在这里插入图片描述
开始赛跑后的每一秒都要判断兔子是否到达休息的标准如果兔子可以休息则判断休息途中乌龟跑多少距离以及兔子休息够后是否仍然休息以及兔子和乌龟每一秒的运动距离另外每秒都要判断兔子或者乌龟是否到达终点

#include<stdio.h>
void fun(int* s1, int* s2, int s, int t, int v1, int v2, int* T,int l)//计算兔子和乌龟跑的距离以及兔子休息时间乌龟运动距离
{
 int S;
 S = *s1 - *s2;
 if (S >= t)
 {
  int i=0;
  while (i < s && *s2 < l && *s1 < l)
  {
   *s2 += v2;
   *T += 1;
   i++;
  }
 }
 else
 {
  *s2 += v2;
  *s1 += v1;
  *T += 1;
 }
int main()
 {
 int v1, v2, s, t, l;
 int s1=0, s2=0, T = 0;
 scanf_s("%d%d%d%d%d", &v1, &v2, &t, &s, &l);
 while (s1 != l && s2 != l)//在没有任一到达终点前一直计算
 {
  fun(&s1, &s2, s, t, v1, v2, &T,l);
 }
 if (s1 == l || s2 == l)
 {
  if (s1 > s2)
  {
   printf("R\n");
   printf("%d", T);
  }
  else if (s1 < s2)
  {
   printf("T\n");
   printf("%d", T);
  }
  else if (s1 == s2)
  {
   printf("D\n");
   printf("%d", T);
  }
 }
 return 0;
 }
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!