PTA 7-22龟兔赛跑解析

本文通过C语言实现了一个龟兔赛跑的模拟程序,使用变量cur表示当前时间,宏定义了龟和兔的速度。每分钟cur++,每十分钟兔子会回头看看,如果兔子超过了乌龟,则cur将增加30,如果这个cur超过了预设的时间T,则需要修正乌龟走过的路程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述使用变量cur来表示当前时间
宏定义龟和兔的速度
每分钟cur++,模拟龟兔赛跑的过程
每十分钟,兔子回头看看
如果兔子超过了乌龟,则cur+=30
如果这个cur超过了T,则需修正乌龟走过的路程

#include<stdio.h>
#define turtle_v 3
#define rabbit_v 9
int main()
{
    int t,cur=0,s_tur=0,s_rab=0;
    scanf("%d",&t);
    if(t<=10)
    {
        printf("^_^ %d",rabbit_v*t);
        return 0;
    }
    while(cur<t)
    {
        cur++;
        s_tur += turtle_v;
        s_rab += rabbit_v;
        if(cur%10==0)
        {
            if(s_rab>s_tur)
            {
                cur += 30;
                if(cur<t)
                    s_tur += 30*turtle_v;
                else
                    s_tur += (30+t-cur)*turtle_v;
            }
        }
    }
    if(s_rab<s_tur)
        printf("@_@ %d",s_tur);
    else if(s_rab>s_tur)
        printf("^_^ %d",s_rab);
    else
        printf("-_- %d",s_rab);
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值