编写程序输入两个日期,计算这两个日期相差多少天
时间: 2023-04-02 19:02:02 浏览: 124
你好,根据你的要求,我可以回答这个问题。以下是计算两个日期相差天数的程序示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
char date1[11], date2[11];
struct tm tm1 = {}, tm2 = {};
time_t time1, time2;
long days;
printf("请输入第一个日期(格式为YYYY-MM-DD):");
scanf("%s", date1);
printf("请输入第二个日期(格式为YYYY-MM-DD):");
scanf("%s", date2);
strptime(date1, "%Y-%m-%d", &tm1);
strptime(date2, "%Y-%m-%d", &tm2);
time1 = mktime(&tm1);
time2 = mktime(&tm2);
days = labs(difftime(time1, time2)) / (24 * 60 * 60);
printf("两个日期相差 %ld 天\n", days);
return ;
}
```
以上程序使用了 time.h 头文件中的函数,通过将日期字符串转换为 tm 结构体,再使用 mktime 函数将其转换为 time_t 类型,最后使用 difftime 函数计算两个日期相差的秒数,再将其转换为天数输出。
阅读全文