当前位置:首页 » 编程语言 » c语言时间变量

c语言时间变量

发布时间: 2025-01-24 10:40:24

❶ 用c语言编程 定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题。

#include<stdio.h>

structy_m_d
{
intyear;
intmonth;
intday;
};

intdays(structy_m_ddate)
{
intsum=date.day;
inta[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
inti;
for(i=1;i<date.month;i++)
{
sum+=a[i];
}
if(date.month>2&&((date.year%4==0&&date.year%100!=0)||date.year%400==0))//若闰年,且晚于2月,加一天
sum++;
returnsum;
}

intmain()
{
structy_m_ddate;
intday_sum;
printf("请输入年月日(以空格隔开):");
scanf("%d%d%d",&date.year,&date.month,&date.day);
day_sum=days(date);
printf("%d年%d月%d日是%d年的第%d天 ",date.year,date.month,date.day,date.year,day_sum);
return0;
}

执行结果如下:

输入:2016年3月1日

输出:该日是当年的第61天。2016年是闰年,所以3月1日是第61天=31+29+1

❷ C语言怎样获取系统当前的时间并把它保存到定义的变量中

C语言中读取系统时间的函数为time(),其函数原型为:

#include <time.h>

time_t time( time_t * ) ;

time_t就是long,函数返回从1970年1月1日(MFC是1899年12月31日)0时0分0秒,到现在的的秒数。

C语言还提供了将秒数转换成相应的时间格式的函数:

  • char * ctime(const time_t *timer); //将日历时间转换成本地时间,返回转换后的字符串指针 可定义字符串或是字符指针来接收返回值

  • struct tm * gmtime(const time_t *timer); //将日历时间转化为世界标准时间(即格林尼治时间),返回结构体指针 可定义struct tm *变量来接收结果

  • struct tm * localtime(const time_t * timer); //将日历时间转化为本地时间,返回结构体指针 可定义struct tm *变量来接收结果

例:

#include<time.h>
voidmain()
{
time_tt;
structtm*pt;
char*pc;
time(&t);
pc=ctime(&t);printf("ctime:%s",pc);
pt=localtime(&t);printf("year=%d",pt->tm_year+1900);
}

时间结构体struct tm 说明:

structtm{
inttm_sec;/*秒–取值区间为[0,59]*/
inttm_min;/*分-取值区间为[0,59]*/
inttm_hour;/*时-取值区间为[0,23]*/
inttm_mday;/*一个月中的日期-取值区间为[1,31]*/
inttm_mon;/*月份(从一月开始,0代表一月)-取值区间为[0,11]*/
inttm_year;/*年份,其值等于实际年份减去1900*/
inttm_wday;/*星期–取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推*/
inttm_yday;/*从每年的1月1日开始的天数–取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推*/
inttm_isdst;/*夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。*/
};

热点内容
随机启动脚本 发布:2025-07-05 16:10:30 浏览:516
微博数据库设计 发布:2025-07-05 15:30:55 浏览:19
linux485 发布:2025-07-05 14:38:28 浏览:299
php用的软件 发布:2025-07-05 14:06:22 浏览:751
没有权限访问计算机 发布:2025-07-05 13:29:11 浏览:425
javaweb开发教程视频教程 发布:2025-07-05 13:24:41 浏览:689
康师傅控流脚本破解 发布:2025-07-05 13:17:27 浏览:234
java的开发流程 发布:2025-07-05 12:45:11 浏览:680
怎么看内存卡配置 发布:2025-07-05 12:29:19 浏览:277
访问学者英文个人简历 发布:2025-07-05 12:29:17 浏览:828