时间换算:用结构类型表示时间内容(要求以时:分:秒的形式表示),输入一个时间数值,再输入一个秒数n(n<60),以时:分:秒的格式输出该时间再过n秒后的时间值(超过24点从0点开始重新开始计时)。

该博客展示了如何使用C语言编写一个结构体`struct time`来表示时间,并实现了一个`add`函数,用于给时间增加指定的秒数。通过递归处理小时、分钟和秒的进位,确保时间在24小时内正确。最后,给出一个主函数`main`,读取用户输入的时间和秒数,调用`add`函数并打印结果。

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

#include <stdio.h>

struct time{
    int hour;
    int minute;
    int second;
};

void add(struct time *p,int s){
    int ho,mi,se;
    ho=p->hour;
    mi=p->minute;
    se=p->second;
    se=se+s;
    if(se<60){p->second=se;return;}
    else {
        mi=p->minute=mi+se/60;
        se=p->second=se%60;
        if(mi<60){return;}
        else {
            mi=p->minute=mi%60;
            ho=ho+mi/60;
            mi=p->hour=mi%60;
        }
        if(ho<24){return;}
        else mi=p->hour=mi%24;
        return;}}

int main(int argc, const char * argv[]) {
    struct time c;
    int n;
    printf("请输入时间:");
    scanf("%d,%d,%d",&c.hour,&c.minute,&c.second);
    printf("请输入秒数:");
    scanf("%d",&n);
    add(&c,n);
    printf("%d,%d,%d",c.hour,c.minute,c.second);
    return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值