/*
* 输入年月日,计算这的这年的第几天
* */
#include <stdio.h>
/***************************************************************
* 闰年判断
* *************************************************************/
int year_rn(int year) {
// printf("%d\n",year);
if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
return 1;
}
}
/****************************************************************
* 该月前天数判断
* **************************************************************/
int mouth_sum(int mouth) {
switch(mouth){
case 1 : return 0;
case 2 : return 31;
case 3 : return 59;
case 4 : return 90;
case 5 : return 120;
case 6 : return 151;
case 7 : return 181;
case 8 : return 212;
case 9 : return 243;
case 10 : return 273;
case 11 : return 304;
case 12 : return 334;
}
}
int main() {
int year = 0, mouth = 0, day = 0, sign_rn = 0, mou_sum = 0, sum = 0;
printf("请输入年,月,日:\n");
scanf("%d%d%d", &year, &mouth, &day);
sign_rn = year_rn(year);
// if(sign_rn == 1) {
// printf("%d是闰年", year);
// }
mou_sum = mouth_sum(mouth);
if(sign_rn == 1 && mouth > 2) {
mou_sum = mou_sum + 1;
}
else {
mou_sum = mou_sum;
}
// printf("%d月前有%d天\n", mouth, mou_sum);
sum = mou_sum + day;
printf("%d年%d月%d日在今年是第%d天", year, mouth, day, sum);
return 0;
}
【C语言】计算指定日期是一年中第几天
最新推荐文章于 2022-10-26 23:32:04 发布