c语言输出一年的第几天
时间: 2023-09-04 18:01:03 浏览: 242
c语言输入年月日,输出这是一年中的第几天
C语言输出一年的第几天可以使用如下代码实现:
```c
#include <stdio.h>
// 判断某年是否为闰年
int isLeapYear(int year) {
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
return 1;
else
return 0;
}
// 计算一年的第几天
int getDayOfYear(int year, int month, int day) {
int daysOfMonth[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int dayOfYear = day;
// 对闰年进行特殊处理,二月变为29天
if (isLeapYear(year))
daysOfMonth[1] = 29;
for (int i = 0; i < month - 1; i++)
dayOfYear += daysOfMonth[i];
return dayOfYear;
}
int main() {
int year, month, day;
printf("请输入日期(年-月-日):");
scanf("%d-%d-%d", &year, &month, &day);
int dayOfYear = getDayOfYear(year, month, day);
printf("这一天是%d年的第%d天\n", year, dayOfYear);
return 0;
}
```
以上代码通过`isLeapYear`函数判断某年是否为闰年,然后根据每个月的天数计算给定日期是一年中的第几天。在main函数中,用户输入日期(年-月-日),然后调用`getDayOfYear`函数计算该日期是一年中的第几天,并将结果输出。
阅读全文