电脑软硬件应用网
当前位置: 电脑软硬件应用网 > 设计学院 > 网络编程 > C语言 > 正文
用C语言实现的闹钟程序
用C语言实现的闹钟程序
2010-10-31 23:24:29  文/网络收集   出处:电脑软硬件应用网   

#include 
#include 
#include 
#include 
#include 
void main() 

int gd=DETECT,gm; 
int x=320,y=240,r=200,i,h,m,s,thetamin,thetasec; 
struct  time t; 
char n[12][3]={"3","2","1","12","11","10","9","8","7","6","5","4"}; 
initgraph(&gd,&gm,"g:\\tc\\bgi");//图形驱动器路径,根据自己的系统更换。 
circle(x,y,210); 
setcolor(4); 
settextstyle(4,0,5); 
for(i=0;i<12;i++) 

if(i!=3) 
outtextxy(x+(r-14)*cos(M_PI/6*i)-10,y-(r-14)*sin(M_PI/6*i)-26,n[i]); 
else 
outtextxy(x+(r-14)*cos(M_PI/6*i)-20,y-(r-14)*sin(M_PI/6*i)-26,n[i]); 

gettime(&t); 
printf("The current time is: %2d:%02d:%02d.%02d\n",t.ti_hour, t.ti_min, 
t.ti_sec, t.ti_hund); 
while(!kbhit()) 

setcolor(5); 
setfillstyle(1,5); 
circle(x,y,10); 
floodfill(x,y,5); 
gettime(&t); 
if(t.ti_min!=m) 

setcolor(0); 
line(x,y,x+(r-60)*cos(thetamin*(M_PI/180)),y-(r-60)*sin(thetamin*(M_PI/180 
))); 
circle(x+(r-80)*cos(thetamin*(M_PI/180)),y-(r-80)*sin(thetamin*(M_PI/180)) 
,10); 
line(x,y,x+(r-110)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-110)*sin(M_PI/6*h 
-((m/2)*(M_PI/180)))); 
circle(x+(r-130)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-130)*sin(M_PI/6*h-( 
(m/2)*(M_PI/180))),10); 

if(t.ti_hour>12) 
t.ti_hour=t.ti_hour-12; 
if(t.ti_hour<4) 
h=abs(t.ti_hour-3); 
else&n
bsp;
h=15-t.ti_hour; 
m=t.ti_min; 
if(t.ti_min<=15) 
thetamin=(15-t.ti_min)*6; 
else 
thetamin=450-t.ti_min*6; 
if(t.ti_sec<=15) 
thetasec=(15-t.ti_sec)*6; 
else 
thetasec=450-t.ti_sec*6; 
setcolor(4); 
line(x,y,x+(r-110)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-110)*sin(M_PI/6*h 
-((m/2)*(M_PI/180)))); 
circle(x+(r-130)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-130)*sin(M_PI/6*h-( 
(m/2)*(M_PI/180))),10); 
line(x,y,x+(r-60)*cos(thetamin*(M_PI/180)),y-(r-60)*sin(thetamin*(M_PI/180 
))); 
circle(x+(r-80)*cos(thetamin*(M_PI/180)),y-(r-80)*sin(thetamin*(M_PI/180)) 
,10); 
setcolor(15); 
line(x,y,x+(r-70)*cos(thetasec*(M_PI/180)),y-(r-70)*sin(thetasec*(M_PI/180 
))); 
delay(1000); 
setcolor(0); 
line(x,y,x+(r-70)*cos(thetasec*(M_PI/180)),y-(r-70)*sin(thetasec*(M_PI/180 
))); 

该程序已在Turbo C++3.0中通过编译.

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新热点 最新推荐 相关文章
    C#实现Windows关机的代码
    用动态规划法求组和数的算法
    循环结构程序具有哪3个组成部分?
    const成员函数有什么特点?
    c语言求平均分程序
    一道关于指针的C语言题
    C语言求3个整数的最大公约数
    BM模式匹配算法C语言实现
    从键盘输入任意5个4位整数存入数组a…
    求1到1000之间能被7和11整除,但不能…
    关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 |

    Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号