21xrx.com
2025-03-16 09:07:10 Sunday
文章检索 我的文章 写文章
C语言实现输入数字输出年月日
2023-06-16 14:36:50 深夜i     6     0
C语言 时间戳 输出年月日

C语言是一种常见的编程语言,用来实现各种计算机程序。在程序编写中,经常会用到日期这一概念。如何利用C语言输入数字,输出对应的年月日呢?

C语言中,可以利用time.h头文件中的一些函数来获取年月日等信息。例如,若输入的数字为时间戳(即距离1970年1月1日0时0分0秒的秒数),则可以利用gmtime()函数将其转换为UTC时间结构体,再分别输出其年月日。代码如下:

#include 
#include 
int main(void)
{
  time_t t;
  struct tm *utc;
  int y, m, d;
  printf("请输入时间戳:");
  scanf("%ld", &t);
  utc = gmtime(&t);
  y = utc->tm_year + 1900;
  m = utc->tm_mon + 1;
  d = utc->tm_mday;
  printf("对应的年月日为:%d%d%d日\n", y, m, d);
 
  return 0;
}

以上代码中,首先提示用户输入时间戳,将其存储在t变量中。接着,利用gmtime()函数将t转换为UTC时间结构体,再将其年月日分别存入y、m、d变量中。最后,利用printf()函数输出结果。

除了使用时间戳,还可以直接输入年月日所对应的数字。代码如下:

#include 
int main(void)
{
  int n, y, m, d;
  printf("请输入年月日,格式为yyyymmdd:");
  scanf("%d", &n);
  y = n / 10000;
  m = n / 100 % 100;
  d = n % 100;
  printf("对应的年月日为:%d%d%d日\n", y, m, d);
 
  return 0;
}

以上代码中,首先提示用户输入年月日,要求输入的数字格式为yyyymmdd,即年份占4位,月份占2位,日期占2位。将其存储在n变量中。接着,通过一些简单的计算,将n拆分为y、m、d三个变量,最后输出结果。

  
  

评论区