C语言怎么实现基于控制台的电子时钟(c语言,开发技术)

时间:2024-04-28 04:51:38 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

使用到下面这些技术:

首先必须先导入库

/*****************实时数字时钟(和计算机系统时间关联)**************#include<time.h>--必须的时间函数头文件time_t--时间类型(time.h定义)structtm--时间结构,time.h定义如下:(依需求选用)inttm_sec;inttm_min;inttm_hour;inttm_mday;inttm_mon;inttm_year;inttm_wday;inttm_yday;inttm_isdst;time(&rawtime);--获取时间,以秒计,从1970年1月一日起算,存于rawtime--获取到当前的秒数,参数为0则函数返回值即为结果localtime(&rawtime);--转为当地时间,tm时间结构system("cls");--命令行清屏

获取坐标的代码如下

#include<windows.h>voidgotoxy(intx,inty)//光标定位函数,需要包含windos.h头文件{COORDcoord;coord.X=x;coord.Y=y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);}

源代码:

#include<stdio.h>#include<time.h>#include<stdlib.h>#include<conio.h>#include<windows.h>voidgotoxy(intx,inty)//光标定位函数,需要包含windos.h头文件{COORDcoord;coord.X=x;coord.Y=y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);}voiddians(){intx=8;gotoxy(x*3,8);printf("**");gotoxy(x*3,9);printf("**");gotoxy(x*3,11);printf("**");gotoxy(x*3,12);printf("**");gotoxy(x*6,8);printf("**");gotoxy(x*6,9);printf("**");gotoxy(x*6,11);printf("**");gotoxy(x*6,12);printf("**");}voiddraw_numb(intx,intshu){//判断0-9的数据,通过gotoxy显示出来if(shu==0){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("**");gotoxy(x,8);printf("**");gotoxy(x,9);printf("**");gotoxy(x,10);printf("**");gotoxy(x,11);printf("**");gotoxy(x,12);printf("**");gotoxy(x,13);printf("**");gotoxy(x,14);printf("*****");}if(shu==1){gotoxy(x,6);printf("*");gotoxy(x,7);printf("*");gotoxy(x,8);printf("*");gotoxy(x,9);printf("*");gotoxy(x,10);printf("*");gotoxy(x,11);printf("*");gotoxy(x,12);printf("*");gotoxy(x,13);printf("*");gotoxy(x,14);printf("*");}if(shu==2){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("*");gotoxy(x,8);printf("*");gotoxy(x,9);printf("*");gotoxy(x,10);printf("*****");gotoxy(x,11);printf("*");gotoxy(x,12);printf("*");gotoxy(x,13);printf("*");gotoxy(x,14);printf("*****");}if(shu==3){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("*");gotoxy(x,8);printf("*");gotoxy(x,9);printf("*");gotoxy(x,10);printf("*****");gotoxy(x,11);printf("*");gotoxy(x,12);printf("*");gotoxy(x,13);printf("*");gotoxy(x,14);printf("*****");}if(shu==4){gotoxy(x,6);printf("**");gotoxy(x,7);printf("**");gotoxy(x,8);printf("**");gotoxy(x,9);printf("**");gotoxy(x,10);printf("*****");gotoxy(x,11);printf("*");gotoxy(x,12);printf("*");gotoxy(x,13);printf("*");gotoxy(x,14);printf("*");}if(shu==5){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("*");gotoxy(x,8);printf("*");gotoxy(x,9);printf("*");gotoxy(x,10);printf("*****");gotoxy(x,11);printf("*");gotoxy(x,12);printf("*");gotoxy(x,13);printf("*");gotoxy(x,14);printf("*****");}if(shu==6){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("*");gotoxy(x,8);printf("*");gotoxy(x,9);printf("*");gotoxy(x,10);printf("*****");gotoxy(x,11);printf("**");gotoxy(x,12);printf("**");gotoxy(x,13);printf("**");gotoxy(x,14);printf("*****");}if(shu==7){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("*");gotoxy(x,8);printf("*");gotoxy(x,9);printf("*");gotoxy(x,10);printf("*");gotoxy(x,11);printf("*");gotoxy(x,12);printf("*");gotoxy(x,13);printf("*");gotoxy(x,14);printf("*");}if(shu==8){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("**");gotoxy(x,8);printf("**");gotoxy(x,9);printf("**");gotoxy(x,10);printf("*****");gotoxy(x,11);printf("**");gotoxy(x,12);printf("**");gotoxy(x,13);printf("**");gotoxy(x,14);printf("*****");}if(shu==9){gotoxy(x,6);printf("*****");gotoxy(x,7);printf("**");gotoxy(x,8);printf("**");gotoxy(x,9);printf("**");gotoxy(x,10);printf("*****");gotoxy(x,11);printf("*");gotoxy(x,12);printf("*");gotoxy(x,13);printf("*");gotoxy(x,14);printf("*****");}}voiddraws(charwei,intshu){//这里定义了6个位置分别是小时的个位十位,分钟的个位十位和秒钟的个位十位intx=8;if(wei=='1'){draw_numb(x*1,shu);//这里调用了draw_numb函数吧x*1是横坐标(也表示第几个位置数),shu是要显示的数据调过去}//x*1表示第一个位置if(wei=='2'){draw_numb(x*2,shu);}if(wei=='3'){draw_numb(x*4,shu);}if(wei=='4'){draw_numb(x*5,shu);}if(wei=='5'){draw_numb(x*7,shu);}if(wei=='6'){draw_numb(x*8,shu);}}intmain(){system("color1b");structtm*curtime;//结构tm,结构指针curtime,time.h中定义time_tt;//时间类型变量t,time.h中定义clock_tstart;//结构clock_t,结构变量start,time.h中定义doubleth_hour,th_min,th_sec;do{dians();t=time(0);//获取到当前的秒数,参数为0则函数返回值即为结果curtime=localtime(&t);//得到当前系统时间/if((double)curtime->tm_hour<=12)//午前的处理/{gotoxy(5,3);printf("AM");//if((double)curtime->tm_hour<10)draws('1',0);//十点之前在小时数前加零draws('1',((int)curtime->tm_hour)/10);draws('2',((int)((double)curtime->tm_hour))%10);}else//午后的处理{gotoxy(5,3);printf("PM");//if((double)curtime->tm_hour-12<10)draws('1',0);//输入0draws('1',(int)curtime->tm_hour/10);draws('2',((int)((double)curtime->tm_hour))%10);}if((double)curtime->tm_min<10)draws('3',0);draws('3',(int)curtime->tm_min/10);draws('4',(int)curtime->tm_min%10);if((double)curtime->tm_sec<10)draws('5',0);draws('5',(int)curtime->tm_sec/10);draws('6',(int)curtime->tm_sec%10);start=clock();while(clock()-start<500);//等待延时1000mssystem("cls");}while(!kbhit());//按任一键退出return0;}

最后运行截图(完美运行)

C语言怎么实现基于控制台的电子时钟

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:C语言怎么实现基于控制台的电子时钟的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:python怎么实现好看的时钟效果下一篇:

3 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18