给出年、月、日,计算该日是该年的第几天。并使用函数的定义,调用方法。并用c语言写出来。
时间: 2023-12-03 19:11:55 浏览: 85
C++自定义函数判断某年某月某日是这一年中第几天
5星 · 资源好评率100%
好的,根据您的要求,我来为您解答。以下是C语言的代码实现:
```c
#include <stdio.h>
int isLeap(int year) { // 判断是否是闰年
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
return 1;
else
return 0;
}
int dayOfYear(int year, int month, int day) { // 计算该日是该年的第几天
int days[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; // 存储每个月的天数
int sum = 0;
for (int i = 1; i < month; i++) { // 计算该日之前整月的天数
sum += days[i];
if (i == 2 && isLeap(year)) // 闰年2月加1天
sum++;
}
sum += day; // 加上该日的天数
return sum;
}
int main() {
int year, month, day;
printf("请输入年月日(格式: 年 月 日): ");
scanf("%d %d %d", &year, &month, &day);
int day_of_year = dayOfYear(year, month, day); // 调用dayOfYear函数
printf("%d年%d月%d日是%d年的第%d天。\n", year, month, day, year, day_of_year);
return 0;
}
```
您可以将以上代码保存为一个`.c`文件,然后使用C编译器进行编译和运行。在程序运行时,会要求您输入年月日,按照指定格式输入即可。程序会自动计算出该日是该年的第几天,并输出结果。
阅读全文