今天 閑着沒事,寫了一個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 }