首页 热点资讯 义务教育 高等教育 出国留学 考研考公

c语言输入年月日,算第几天?

发布网友 发布时间:2022-04-22 14:13

我来回答

4个回答

热心网友 时间:2023-09-14 00:12

输入年月日三个值,先累加该年之前各个月的每月天数,最后累加日期天数即可获取结果。

一、算法设计:

1、输入年月日三个值;

2、为保证程序健壮性,可以对三个值的合法性进行判断,只对合法数据进行操作;

3、累加之前各月天数;

4、累加当前日值;

5、输出结果。

二、注意点:

可以使用数组存储各个月份的天数,用循环累加。需要注意的是闰年的判断。对于闰年,2月要多加一天。

三、参考代码:

#include <stdio.h>
int main()
{
    int mdays[12] = {31,28,31,30,31,30,31,31,30,31,30,31};//十二个月的天数。
    int y,m,d,r=0,i;
    scanf("%d%d%d",&y,&m,&d);
    if(y%400==0 || (y%4==0 && y %100 != 0))//闰年。
        mdays[1] = 29;//设置闰年二月值。
    if(y<0 || m<=0 || m>12 || d<=0 || d>mdays[m-1])//输入非法。
    {
        printf("输入年月日不合法\n");//提示并退出。
        return -1;
    }
    for(i = 0; i < m-1; i ++)//累加之前各个月。
        r+=mdays[i];
    r+=d;//累加日期值。
    printf("%d\n",r);//输出结果。
    return 0;
}

热心网友 时间:2023-09-14 00:12

date.day//要加上该月的第几天,比如输入2010 5 19 <enter>day_sum就要加上1、2、3、4月分总共的天数,然后再加上19天,这就是这一年的第几天

第二个空就填1//因为闰年比平年多一天。

热心网友 时间:2023-09-14 00:12

date.day
1

热心网友 时间:2023-09-14 00:13

day
1

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com