输入任意一个日期的年月日旳值,求出从公园一年一月一日到该日期前一个月的月末总共有多少天用C语言编程
时间: 2024-05-14 07:16:54 浏览: 119
确切的说,ChitGPT是基于GPT-2的中文语言AI模型,而ChatGPT是OpenAI公司开发的英文语言AI模型。不过我明白你的问题,我可以回答你的第一个问题。
以下是计算月末天数的C语言代码:
```
#include <stdio.h>
// 判断是否为闰年
int isLeap(int year) {
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
return 1;
else
return 0;
}
// 计算月末天数
int endOfMonth(int year, int month) {
int days[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if (month == 2 && isLeap(year)) // 润年 2 月有 29 天
return 29;
else
return days[month - 1];
}
int main() {
int year, month, day;
printf("请输入日期(年 月 日):");
scanf("%d%d%d", &year, &month, &day);
// 计算从 1900 年到该月份前一月的天数
int totalDays = 0;
for (int y = 1900; y < year; y++) {
if (isLeap(y))
totalDays += 366;
else
totalDays += 365;
}
for (int m = 1; m < month; m++)
totalDays += endOfMonth(year, m);
// 输出结果
printf("从公元 1900 年 1 月 1 日到 %d 年 %d 月 %d 日前一个月的月末总共有 %d 天", year, month, day, endOfMonth(year, month-1));
return 0;
}
```
这段代码会读入一个日期值,然后计算从公元1900年1月1日到该日期前一个月的月末总共有多少天。注意,此代码中默认1900年1月1日为星期一。
阅读全文