#include<math.h> /* 引入math.h */
#include<dos.h> /* 引入dos.h */
#define pi 3.1415926 /*定义pi=3.14159*/
#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=0i<60i++) /*循环(算时间)*/
{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()) /*获取键盘相应*/
{while(t[0].ti_sec==s)
gettime(t)/*C语言中得到时间的函数*/
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()
}
http://zhidao.baidu.com/question/121241211.html
#include <stdio.h>struct clock {
int hour
int minute
int second
}
typedef struct clock CLOCK
/*
函数功能:时、分、秒时间的更新
函数参数:无
函数返回值:无
*/
void Update(CLOCK *myclock) {
myclock->second++
if (myclock->second == 60) { /*若second值为60,表示已过1分钟,则 minute值加1*/
myclock->second = 0
myclock->minute++
}
if (myclock->minute == 60){ /*若minute值为60,表示已过1小时,则 hour值加1*/
myclock->minute = 0
myclock->hour++
}
if (myclock->hour == 24) { /*若hour值为24,则hour的值从0开始计时*/
myclock->hour = 0
}
}
/*
函数功能:时、分、秒时间的显示
函数参数:无
函数返回值:无
*/
void Display(CLOCK *myclock) { /*用回车符'\r'控制时、分、秒显示的位置*/
printf("%2d:%2d:%2d\r", myclock->hour, myclock->minute, myclock->second)
}
/*
函数功能:模拟延迟1秒的时间
函数参数:无
函数返回值:无
*/
void Delay(void) {
long t
for (t = 0t <290000000t++) {
/*循环体为空语句的循环,起延时作用*/
}
}
int main(){
CLOCK myclock
long i
myclock.hour = myclock.minute = myclock.second = 0 /*hour,minute,second赋初值0*/
for (i = 0i <100000i++) { /*利用循环结构,控制时钟运行的时间*/
Update(&myclock) /*时钟更新*/
Display(&myclock) /*时间显示*/
Delay() /*模拟延时1秒*/
}
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)