c语言编写函数,用户输入今天日期,结果输出明天日期
时间: 2023-05-23 08:06:33 浏览: 124
A:下面是一个简单的C语言函数,用于根据用户输入的日期计算并输出明天的日期:
```c
#include <stdio.h>
void nextDay(int *year, int *month, int *day) {
// 判断当前月份的最大天数
int maxDay;
if (*month == 2) {
if ((*year % 4 == 0 && *year % 100 != 0) || *year % 400 == 0) {
maxDay = 29;
} else {
maxDay = 28;
}
} else if (*month == 4 || *month == 6 || *month == 9 || *month == 11) {
maxDay = 30;
} else {
maxDay = 31;
}
// 如果是当前月份最后一天,回到下一个月的第一天
if (*day == maxDay) {
*day = 1;
if (*month == 12) {
*month = 1;
*year = *year + 1;
} else {
*month = *month + 1;
}
} else {
// 否则,直接加一天
*day = *day + 1;
}
}
int main() {
// 获取用户输入的日期
int year, month, day;
printf("请输入今天的日期(格式:yyyy mm dd):");
scanf("%d %d %d", &year, &month, &day);
// 计算明天的日期
nextDay(&year, &month, &day);
// 输出结果
printf("明天的日期是:%d年%d月%d日\n", year, month, day);
return 0;
}
```
该程序首先获取用户输入的年份、月份和日期,然后调用nextDay函数计算明天的日期并输出。nextDay函数中,我们首先根据当前月份的最大天数判断出每个月的最后一天,如果今天是最后一天,则回到下一个月的第一天;否则,直接将日期加一天。注意,这里传入的year、month、day都是指针类型,因为我们需要对它们的值进行修改。
阅读全文