今天 闲着没事,写了一个C语言显示“当前时间”的小程序。
该小程序用到了<time.h>头文件:
time.h是日期和时间的头文件(C语言和C++)
时间方式:
time_t time(time_t* timer) 得到从标准计时点(一般是1970年1月1日午夜)到当前时间的秒数。
clock_t clock(void) 得到从程序启动到此次函数调用时累计的毫秒数。
函数名称:localtime
函数原型: struct tm *localtime(const time_t *timer)
函数功能: 返回一个以tm结构表达的机器时间信息
函数返回: 以tm结构表达的时间,结构tm定义如下:
struct tm{
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;
};
参数说明: timer-使用time()函数获得的机器时间
运行结果如图:
小程序有以下两个小功能:
1.倒计时
2.显示”当前时间“
程序原代码:
1 #include <time.h> 2 #include <stdio.h> 3 #include <windows.h> 4 5 void jiemianshezhi(); 6 void daojishi(); 7 void dangqianshijian(); 8 9 main() 10 { 11 jiemianshezhi(); 12 13 } 14 15 //界面设置 16 void jiemianshezhi() 17 { 18 int c; 19 20 //设置窗口 21 system("title tanzi shijian v-1") ; 22 system("color f4"); 23 system("mode con:cols=100 lines=30"); 24 25 //设置功能界面 26 printf("\t\t-------tanzi shijian-------\n\n"); 27 printf("\t\t 1 倒计时 2 当前时间\n\n"); 28 printf("\t\t---------------------------\n") ; 29 printf("请输入你的选择:\n"); 30 scanf("%d",&c); 31 32 switch(c) 33 { 34 case 1:daojishi();break; 35 case 2:dangqianshijian();break; 36 default:break; 37 } 38 } 39 40 //倒计时 41 void daojishi() 42 { 43 int c; 44 45 system("cls"); 46 printf("倒计时:\n"); 47 printf("-------------------\n"); 48 printf("1 30 s | 2 60 s\n"); 49 printf("3 120 s | 4 240 s\n"); 50 printf("-------------------\n"); 51 printf("请输入你的选择:\n"); 52 scanf("%d",&c); 53 system("cls"); 54 55 switch(c) 56 { 57 case 1: 58 printf("30s倒计时开始...\n"); 59 for(int i=30;i>=0;i--) 60 { 61 Sleep(1000); 62 printf("%d s\n",i); 63 } 64 printf("\a"); 65 Sleep(1000); 66 printf("\a"); 67 system("cls"); 68 jiemianshezhi(); 69 break; 70 71 case 2: 72 printf("60s倒计时开始...\n"); 73 for(int i=60;i>=0;i--) 74 { 75 Sleep(1000); 76 printf("%d s\n",i); 77 } 78 printf("\a"); 79 Sleep(1000); 80 printf("\a"); 81 system("cls"); 82 jiemianshezhi(); 83 break; 84 85 case 3: 86 printf("120s倒计时开始...\n"); 87 for(int i=120;i>=0;i--) 88 { 89 Sleep(1000); 90 printf("%d s\n",i); 91 } 92 printf("\a"); 93 Sleep(1000); 94 printf("\a"); 95 system("cls"); 96 jiemianshezhi(); 97 break; 98 99 case 4: 100 printf("240s倒计时开始...\n"); 101 for(int i=240;i>=0;i--) 102 { 103 Sleep(1000); 104 printf("%d s\n",i); 105 } 106 printf("\a"); 107 Sleep(1000); 108 printf("\a"); 109 system("cls"); 110 jiemianshezhi(); 111 break; 112 } 113 114 } 115 116 117 118 119 //当前时间 120 void dangqianshijian() 121 { 122 time_t sec = time(NULL); 123 struct tm t = *localtime(&sec); 124 printf("当前时间:%02d:%02d:%02d \n\n", t.tm_hour, t.tm_min, t.tm_sec); 125 system("pause") ; 126 }