怎么用C语言输入一个日期,求该日期是该年的第几天?

如题所述

第1个回答  2022-12-11

我大概给个思路,代码是现写的 没调试
先定义每个月的天数,2月按28天算
输入年月日后,根据年判断是否闰年(闰年加1天),再从1月加到当月的前一月,再加上日期就可以了

#include <stdio.h>
int month[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
main()
{int yy,mm,dd, days;
int i;
printf("input year:"); scanf("%d", &yy);
printf("input month:"); scanf("%d", &mm);
printf("input day:"); scanf("%d", &dd);
/* 如果大于2月,要做闰年的判断,忘了,不一定准 */
if( mm > 2 && ((year%4==0 && year%100!=0) || year%400==0) ) days = 1;
else days = 0;

/* 加上前面各整月的天数 */
for(i = 0; i < mm-1; i++) days += month[i];

/* 加上日数 */
days += dd;

printf("This is the %d day of year %d!!\n", days, yy);
}

比如输入 1999 2 1
应该输出:This is the 32 day of year 1999!!

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网