c语言输入一个日期,计算是这一年的第几天 (建议使用循环)
时间: 2024-05-07 20:23:29 浏览: 155
c语言经典案例
可以使用循环来计算一个日期是这一年的第几天。具体实现如下:
```c
#include <stdio.h>
int main()
{
int year, month, day;
int days_in_month[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int i, total_days = 0;
printf("请输入日期(格式:年 月 日):");
scanf("%d %d %d", &year, &month, &day);
// 判断闰年
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
days_in_month[1] = 29; // 修改2月份的天数为29天
}
// 计算天数
for (i = 0; i < month - 1; i++) {
total_days += days_in_month[i];
}
total_days += day;
printf("%d年%d月%d日是该年的第%d天\n", year, month, day, total_days);
return 0;
}
```
代码中,首先通过 `scanf` 函数输入日期信息,然后根据年份判断是否为闰年,如果是则将2月份的天数修改为29天。接着使用循环计算月份前面所有月份的天数之和,最后将日数加上去,即可得到该日期是这一年的第几天。
阅读全文