1000-9999年中任意输入一个日期,求出后天日期。c语言
时间: 2024-03-23 07:37:08 浏览: 127
C语言输入一个整数序列并计算他们的值.rar_C语言输入一个整数序列并计算他们的值_输入序列C语言
5星 · 资源好评率100%
可以使用C语言的`time.h`库中的函数来实现,具体实现步骤如下:
1. 定义一个`struct tm`结构体,并初始化为输入的日期。
2. 将结构体转换为时间戳,即秒数。
3. 将时间戳加上两天的秒数,即48 * 60 * 60。
4. 将新的时间戳转换为结构体。
5. 输出新的日期。
下面是一个示例代码:
```c
#include <stdio.h>
#include <time.h>
int main() {
int year, month, day;
printf("请输入日期(格式:XXXX-XX-XX):");
scanf("%d-%d-%d", &year, &month, &day);
// 初始化结构体
struct tm date = {0};
date.tm_year = year - 1900; // 年份要减去1900
date.tm_mon = month - 1; // 月份要减去1
date.tm_mday = day;
// 转换为时间戳
time_t timestamp = mktime(&date);
// 加上两天的秒数
timestamp += 48 * 60 * 60;
// 转换为结构体
struct tm new_date = *localtime(×tamp);
// 输出新的日期
printf("后天的日期是:%d-%02d-%02d\n", new_date.tm_year + 1900, new_date.tm_mon + 1, new_date.tm_mday);
return 0;
}
```
注意:这里的代码中假设输入的日期是合法的,没有做输入校验。如果需要做校验可以使用`scanf`函数返回值来判断输入是否合法。
阅读全文