使用c语言完成任务:通过键盘输入年月日,输出该日是这一年的第多少天。
时间: 2024-05-13 07:20:59 浏览: 94
C语言中字符的输入输出以及计算字符个数的方法详解
5星 · 资源好评率100%
```c
#include <stdio.h>
int main() {
int year, month, day;
int days_of_month[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int i, days = 0;
printf("请输入年月日,格式为YYYY-MM-DD:");
scanf("%d-%d-%d", &year, &month, &day);
for (i = 0; i < month - 1; i++) {
days += days_of_month[i];
}
if (month > 2 && ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)) {
days++;
}
days += day;
printf("%d年%d月%d日是这一年的第%d天。\n", year, month, day, days);
return 0;
}
```
说明:
- 通过`scanf()`函数从键盘输入年月日,格式为`YYYY-MM-DD`。
- 利用数组`days_of_month`存储每个月的天数,然后累加前面几个月的天数,得到`days`。
- 如果当前月份大于2,并且该年是闰年,则二月份的天数加1。
- 最后加上当前日期的天数,输出结果。
阅读全文