C语言写一个程序,实现用户输入出生日期和当前日期,计算用户的实际年龄
时间: 2023-05-21 19:04:22 浏览: 1343
好的,以下是代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX_LEN 20
int main()
{
char birth[MAX_LEN];
char current[MAX_LEN];
printf("请输入您的出生日期(格式YYYY/MM/DD):\n");
scanf("%s", birth);
printf("请输入当前日期(格式YYYY/MM/DD):\n");
scanf("%s", current);
struct tm btime = { 0 };
struct tm ctime = { 0 };
strptime(birth, "%Y/%m/%d", &btime);
strptime(current, "%Y/%m/%d", &ctime);
time_t btimestamp = mktime(&btime);
time_t ctimestamp = mktime(&ctime);
double diff = difftime(ctimestamp, btimestamp);
int years = (int)diff / (3600 * 24 * 365);
printf("您的实际年龄为%d岁。\n", years);
return 0;
}
```
这个程序可以让用户输入出生日期和当前日期,然后计算出实际年龄并输出。首先,我们定义了两个字符数组`birth`和`current`,用于存储用户输入的日期。然后,我们使用`strptime`函数来将输入的日期字符串转化为结构体`tm`表示的时间。接着,我们使用`mktime`函数将结构体`tm`表示的时间转化为`time_t`表示的时间戳,方便我们计算两个日期之间的差值。最后,我们计算年龄并输出结果。
阅读全文