第1个回答 推荐于2018-03-01
#include <stdio.h>
#include <time.h>
void main ()
{
time_t rawtime;
struct tm * timeinfo;
time ( &rawtime );
timeinfo = localtime ( &rawtime );
printf ( "\007The current date/time is: %s", asctime (timeinfo) );
exit(0);
}
=================
#include <time.h> -- 必须的时间函数头文件
time_t -- 时间类型(time.h 定义)
struct tm -- 时间结构,time.h 定义如下:
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
time ( &rawtime ); -- 获取时间,以秒计,从1970年1月一日起算,存于rawtime
localtime ( &rawtime ); -- 转为当地时间,tm 时间结构
asctime ()-- 转为标准ASCII时间格式:
星期 月 日 时:分:秒 年
=========================================
你要的格式可这样输出:
printf ( "%4d-%02d-%02d %02d:%02d:%02d\n",1900+timeinfo->tm_year, 1+timeinfo->tm_mon,
timeinfo->tm_mday,timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);
就是直接打印tm,tm_year 从1900年计算,所以要加1900,
月tm_mon,从0计算,所以要加1
其它你一目了然啦。本回答被提问者和网友采纳
第2个回答 2012-12-08
#include<stdio.h>
#include<time.h>
void main(){
struct tm * tmptr;//时间的结构体
time_t secnow;
time(&secnow);
tmptr = localtime(&secnow);
int hour1,min1;
hour1 = tmptr->tm_hour;
printf("The time is %02d",hour1);//输出当前小时-----------这才是人家提问的要的时间的数字!
}
第3个回答 2012-12-08
#include<time.h>
#include<stdio.h>
int main()
{
struct tm *t;
time_t tt;
time(&tt);
t=localtime(&tt);
printf("%4d年%02d月%02d日 %02d:%02d:%02d\n",t->tm_year+1900,t->tm_mon+1,t->tm_mday,t->tm_hour,t->tm_min,t->tm_sec);
return 0;
}
第4个回答 2012-12-08
#include<stdio.h>
#include<time.h>
void main()
{
tm t;
_getsystime(&t);
printf("%d:%d:%d\n", t.tm_hour, t.tm_min, t.tm_sec);//t.tm_hour
}