c语言输入一个日期判断天数
时间: 2023-08-24 21:30:27 浏览: 63
可以C语言的time.h头文件中的函数来计算日期的天数。具体实现可以参考下面的代码示例:
```c
#include <stdio.h>
#include <time.h>
int main() {
int year, month, day;
printf("请输入日期(格式:年 月 日):");
scanf("%d %d %d", &year, &month, &day);
struct tm time = {0};
time.tm_year = year - 1900;
time.tm_mon = month - 1;
time.tm_mday = day;
time_t t = mktime(&time);
if (t == (time_t)(-1)) {
printf("日期无效!\n");
return 0;
}
int days = t / 86400;
printf("该日期是该年的第 %d 天。\n", days + 1);
return 0;
}
```
在上面的代码中,我们先通过`scanf`函数获取用户输入的日期信息,然后使用`struct tm`数据结构来表示这个日期,接着使用`mktime`函数将其转换为对应的时间戳(Unix时间戳表示从1970年1月1日到该日期经过的秒数),最后用时间戳除以一天的秒数86400来得到天数。需要注意的是,我们将得到的天数加一,是因为一年的第一天是1月1日,而不是0月0日。
相关推荐
![C](https://img-home.csdnimg.cn/images/20210720083646.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)