用C语言 编写 一个时钟程序

用C语言 编写 一个时钟程序
不要 石英钟

#include<graphics.h>
#include<math.h>
#include<dos.h>
#define pi 3.1415926
#define X(a,b,c) x=a*cos(b*c*pi/180-pi/2) 300;
#define Y(a,b,c) y=a*sin(b*c*pi/180-pi/2) 240;
#define d(a,b,c) X(a,b,c);Y(a,b,c);line(300,240,x,y)
void init()
{int i,l,x1,x2,y1,y2;
setbkcolor(1);
circle(300,240,200);
circle(300,240,205);
circle(300,240,5);
for(i=0;i<60;i )
{if(i%5==0) l=15;
else l=5;
x1=200*cos(i*6*pi/180) 300;
y1=200*sin(i*6*pi/180) 240;
x2=(200-l)*cos(i*6*pi/180) 300;
y2=(200-l)*sin(i*6*pi/180) 240;
line(x1,y1,x2,y2);
}
}
main()
{
int x,y;
int gd=VGA,gm=2;
unsigned char h,m,s;
suct time t[1];
initgraph(&gd,&gm,"d:\\tc");
init();
setwritemode(1);
gettime(t);
h=t[0].ti_hour;
m=t[0].ti_min;
s=t[0].ti_sec;
setcolor(7);
d(150,h,30);
setcolor(14);
d(170,m,6);
setcolor(4);
d(190,s,6);
while(!kbhit())
{while(t[0].ti_sec==s)
gettime(t);
sound(400);
delay(70);
sound(200);
delay(30);
nosound();
setcolor(4);
d(190,s,6);
s=t[0].ti_sec;
d(190,s,6);
if (t[0].ti_min!=m)
{
setcolor(14);
d(170,m,6);
m=t[0].ti_min;
d(170,m,6);
}
if (t[0].ti_hour!=h)
{ setcolor(7);
d(150,h,30);
h=t[0].ti_hour;
d(150,h,30);
sound(1000);
delay(240);
nosound();
delay(140);
sound(2000);
delay(240);
nosound();
}
}
getch();
closegraph();
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-22
/*全屏幕模拟时钟的c源程序*/
#include<graphics.h>
#include<math.h>
#include<dos.h>
#define
pi
3.1415926
#define
X(a,b,c)
x=a*cos(b*c*pi/180-pi/2)+300;
#define
Y(a,b,c)
y=a*sin(b*c*pi/180-pi/2)+240;
#define
d(a,b,c)
X(a,b,c);Y(a,b,c);line(300,240,x,y)
void
init()
{int
i,l,x1,x2,y1,y2;
setbkcolor(0);
circle(300,240,200);
circle(300,240,205);
circle(300,240,5);
for(i=0;i<60;i++)
{if(i%5==0)
l=15;
else
l=5;
x1=200*cos(i*6*pi/180)+300;
y1=200*sin(i*6*pi/180)+240;
x2=(200-l)*cos(i*6*pi/180)+300;
y2=(200-l)*sin(i*6*pi/180)+240;
line(x1,y1,x2,y2);
/*在指定的两点间画一条线*/
}
}
main()
{
int
x,y;
int
gd=VGA,gm=2;
unsigned
char
h,m,s;
struct
time
t[1];
initgraph(&gd,&gm,"d:\\tc");
/*初始化图形系统*/
init();
setwritemode(1);
gettime(t);
/*读取系统时间*/
h=t[0].ti_hour;
m=t[0].ti_min;
s=t[0].ti_sec;
setcolor(7);
/*设置当前线的颜色*/
d(150,h,30);
setcolor(14);
d(170,m,6);
setcolor(4);
d(190,s,6);
while(!kbhit())
/*kbhit检查当前按下的健*/
{while(t[0].ti_sec==s)
gettime(t);
sound(400);
delay(70);
sound(200);
delay(30);
nosound();
setcolor(4);
d(190,s,6);
s=t[0].ti_sec;
d(190,s,6);
if
(t[0].ti_min!=m)
{
setcolor(14);
d(170,m,6);
m=t[0].ti_min;
d(170,m,6);
}
if
(t[0].ti_hour!=h)
{
setcolor(7);
d(150,h,30);
h=t[0].ti_hour;
d(150,h,30);
sound(1000);
delay(240);
nosound();
delay(140);
sound(2000);
delay(240);
nosound();
}
}
getch();
closegraph();
/*关闭图形系统*/
}
第2个回答  2008-04-10
什么意思?听不懂.
第3个回答  2008-04-10
说具体点呀,什么样的时钟?有什么样的功能?
第4个回答  2008-04-10
用time()来取得时间,ctime来格式化输出,需要代码给我个email我发给你

c语言怎么样编写一个时钟程序
RotatePoint(pt,1,iAngle);pt[2].x=pt[2].y=iAngle%5?33:100;pt[0].x-=pt[2].x\/2;pt[0].y-=pt[2].y\/2;pt[1].x=pt[0].x+pt[2].x;pt[1].y=pt[0].y+pt[2].y;SelectObject(hdc,GetStockObject(BLACK_BRUSH));Ellipse(hdc,pt[0].x,pt[0].y,pt[1].x,pt[1...

求一个关于用C语言编写的电子时钟的程序,内容要有闹钟,可以调整时间...
define uchar unsigned char \/\/#define HZ 12 sbit key0=P0^0; \/\/ 分钟调整 sbit key1=P0^1; \/\/ 小时调整 sbit P2_0=P2^7; \/\/秒 指示灯 sbit MN_RXD=P3^6;sbit MN_TXD=P3^7;uchar data CLOCK[4]={0,0,0,12};\/\/存放时钟时间(百分秒,秒,分,和时位)\/\/数码管...

c语言 数字时钟程序 要求显示格式为:HH:MM:SS
include include <stdio.h> include <stdlib.h> define BUF_SIZE 80 int main(){ time_t t;struct tm *tm;char s[BUF_SIZE];if(time(&t) == ((time_t)-1)) return 1;tm = localtime(&t);if(!tm) return 1;strftime(s, sizeof(s), ":%H:%M:%S", tm);printf("%s\\n",...

c语言 时钟模拟
nosound(); \/\/停止声音 sleep(1); \/\/停止一秒 cleardevice(); \/\/清屏 } }

用c语言编一个时钟程序实现时分秒计时功能
int main(){ time_t t1,t2;struct tm *ptm;char timestr[128]={'\\0'};time(&t1);while(1){ time(&t2);if(difftime(t2,t1)>=1){ system("cls");ptm=localtime(&t2);strftime(timestr,128,"%H:%M:%S",ptm);printf("%s\\n",timestr);t1=t2;} } system("PAUSE");return 0...

单片机C语言该怎么编写时钟程序?
这个是简单的数码管时钟显示如果有需要,我写过比较完善的1602显示时钟.显示控制年月日等等.#include<reg51.h> sbit Begin=P2^0;sbit Hour=P2^1;sbit Mus=P2^2;sbit End=P2^3;unsigned char code Tab[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x...

单片机时钟程序 24小时制
C语言的:include <reg51.h> include<stdio.h> unsigned char ledbuf[8];code unsigned char ledmap[] = {0xc0, 0xf9, 0xa4, 0xb0, 0x99,0x92, 0x82, 0xf8, 0x80, 0x90}; \/\/8段显示 void delay(unsigned char cnt){ unsigned char i;while(cnt--!=0)for(i=100;i!=0;i-...

用C语言编一个数字电子时钟的程序
1.textmode函数在turboc中没有办法使用,不知道是什么问题,而borland c就可以。2.无论怎么设置,自己的ctrlbreak函数在上述两个环境中都不能被调用,非常遗憾。所以不能够优雅的退出。只能按两次ctrlbreak。下面是程序。---#include <stdio.h>#include <stdlib.h>#include <stdio.h>#include <conio.h>#include ...

c语言 倒计时时钟程序
23:59:59 -- 86400 秒 include <stdio.h> include <windows.h> include <conio.h> void main(){ long int t;int flag =0;t = 86400;printf("press S start, press E stop\\n");while(1){ if (kbhit() == 'S' || kbhit() == 's') flag =1;if (kbhit() == 'E' ||...

c语言 提示时间 程序(带声音提示时间、就是闹铃)要在DOS在运行的。做好...
void delay(unsigned char i) \/\/延时子程序 { unsigned char j;while((i--)!=0){ for(j=123;j>0;j--);} } unsigned char button_time(n,x,y) \/\/时钟调整子程序 unsigned char n,x,y;{ if(P1_7==0){ delay(50);if(P1_7==0){ n++;if(n==x)n=0;while(P1_7...

相似回答