题解 | #计算日期到天数转换#

计算日期到天数转换

https://www.nowcoder.com/practice/769d45d455fe40b385ba32f97e7bcded

#include <stdio.h>

// 获取某年某月的天数
int GetMonthDay(int year, int month) {
    int monthArray[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
    if (month == 2 && ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0))) {
        return 29;
    }
    return monthArray[month];
}

int main() {
    int year, month, day;

    // 循环读取输入的年份、月份和日期
    while (scanf("%d %d %d", &year, &month, &day) != EOF) {
        int ans = 0;

        // 计算给定日期与该年的1月1日之间的天数差
        for (int m = 1; m < month; m++) {
            ans += GetMonthDay(year, m);
        }
        ans += day;

        // 输出结果
        printf("%d\n", ans);
    }

    return 0;
}

在这段代码中,我们通过循环将给定日期之前的每个月份的天数累加到ans变量中,然后再加上给定日期的天数,得到最终的天数差。代码中的循环可以处理多组输入,直到遇到 EOF(End of File)。最后,我们使用printf函数打印结果。

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 16:15
我应届生,去年10月份开始在这家公司实习,到今年10月份正好一年想(实习+试用期),在想要不要提前9月份就离职,这样好找工作些,但又差一个月满一年,又怕10月份国庆回来离职,容易错过了下半年的金九银十,到年底容易gap到年后
小破站_程序员YT:说这家公司不好吧,你干了快一年 说这家公司好吧,你刚毕业就想跑路说你不懂行情吧,你怕错过金九银十说 你懂行情吧,校招阶段在实习,毕业社招想换工作 哥们,我该怎么劝你留下来呢
应届生,你找到工作了吗
点赞 评论 收藏
分享
码农索隆:想看offer细节
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 14:00
林子大了什么鸟都有啊,我觉得我说的已经很客气了,阴阳谁呢
牛客62656195...:应该不是阴阳吧?你第一次注册的时候boss就说你是牛人
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务