给出现在的时间,输出下一秒的时间.

 相对于上一个作品,  这个难度系数减少,  我们只用构建结构函数,  然后输出加一秒后的时间就行了.

这里秒钟, 分钟,  ,  可以满六十进一,  消失满24,到凌晨零点.

下面讲解详细步骤:

第一步:

构造结构参数:

 struct time {
    int hour;
    int minutes;
    int seconds;
};

第二步:

构建数组输入符合格式的时间:

     struct time testTimes[5] = {
        {11,59,59},{12,3,34},{23,59,59}
    };

第三步:

调用函数,进行时间更新

testTimes[i] = timeUpdate(testTimes[i]);

第四步:

把时间结构体参数输入进去,  然后进行更新, 先加一秒,  然后满六十 ,分钟进一,  分钟如果满六十, 小时进一,  小时满二十四,  清零

struct time timeUpdate(struct time now)
{
    ++now.seconds;
    printf("%d\n",now.seconds);
    if(now.seconds==60){
        now.seconds = 0;
        ++now.minutes;
        printf("第二次:%d\n",now.seconds);
    printf("%d\n",now.minutes);
        if(now.minutes == 60 ){
            now.minutes = 0;
            printf("%d\n",now.minutes);
            ++now.hour;
            printf("%d\n",now.hour);
            if(now.hour == 24){
                now.hour = 0;
            
            }
        }
    }
    return now;

}


记得返回现在的时间,  用于输出. 

第五步:

结尾工作, 输出更新时间

    int i;

    for( i=0; i<1; ++i){
        printf("Time is %.2i:%.2i:%.2i\n",testTimes[i].hour, testTimes[i].minutes,testTimes[i].seconds);
        testTimes[i] = timeUpdate(testTimes[i]);
        printf("过了一秒后的时间是: %.2i:%.2i:%.2i\n",testTimes[i].hour, testTimes[i].minutes,testTimes[i].seconds);
    }
    return 0;

 

源代码如下:

#include <stdio.h>

struct time {
	int hour;
	int minutes;
	int seconds;
};

struct time timeUpdate(struct time now);

int main(void)
{
	struct time testTimes[5] = {
		{11,59,59}
	};
	int i;

	for( i=0; i<1; ++i){
		printf("Time is %.2i:%.2i:%.2i\n",testTimes[i].hour, testTimes[i].minutes,testTimes[i].seconds);
		testTimes[i] = timeUpdate(testTimes[i]);
		printf("过了一秒后的时间是: %.2i:%.2i:%.2i\n",testTimes[i].hour, testTimes[i].minutes,testTimes[i].seconds);
	}
	return 0;
}
struct time timeUpdate(struct time now)
{
	++now.seconds;
	
	if(now.seconds==60){
		now.seconds = 0;
		++now.minutes;
		if(now.minutes == 60 ){
			now.minutes = 0;
			++now.hour;
			if(now.hour == 24){
				now.hour = 0;
			
			}
		}
	}
	return now;

}

 

 

 

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值