c++简单的求两个日期的天数差
时间: 2023-05-21 20:07:34 浏览: 97
您好!可以使用 time.h 头文件中的 mktime 和 difftime 函数来求两个日期的天数差。具体代码如下:
#include <stdio.h>
#include <time.h>
int main()
{
struct tm t1 = {0};
struct tm t2 = {0};
time_t time1, time2;
printf("请输入第一个日期(格式:年 月 日):");
scanf("%d %d %d", &(t1.tm_year), &(t1.tm_mon), &(t1.tm_mday));
t1.tm_year -= 1900; // 从1900年开始计算年份,需减去1900
t1.tm_mon -= 1; // 月份需要减1,如1月为0,2月为1,以此类推
printf("请输入第二个日期(格式:年 月 日):");
scanf("%d %d %d", &(t2.tm_year), &(t2.tm_mon), &(t2.tm_mday));
t2.tm_year -= 1900;
t2.tm_mon -= 1;
time1 = mktime(&t1);
time2 = mktime(&t2);
double days = difftime(time2, time1) / 86400.0; // 将时间差转换为天数
printf("两个日期的天数差为:%.0f天\n", days);
return 0;
}
注意,这个方法在计算天数差的时候并没有考虑闰年,所以在实际应用中需酌情修改。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)