大侠帮忙解决一下 C 语言设计的问题

来源:百度知道 编辑:UC知道 时间:2024/05/05 04:16:05
1 课程设计题目
电子时钟系统的设计与实现
2 课程设计内容
时钟是人们所熟知的一个工具,有机械表和电子表之分。电子表又可分为指针式电子表和数码式电子表。设计一个电子时钟系统,模拟机械表的运转模式。时钟系统的具体模块包括:
1. 主控模块
调用初始化模块对系统进行初始化,调用和协调各模块之间的关系,完成系统功能。
2. 系统初始化
完成系统的初始化。
3. 坐标4. 点计算模块
完成时、分、秒指针旋转一周的60个坐标点的计算等任务。
5. 时钟面板绘制模块
完成时钟面板的绘制和表的外框绘制,包括60个标志点(其中含有12个整点位置的标志点)。
6. 读系统时间模块
完成系统时间的读取。
7. 时钟运行模块
完成时钟指针的移动。
8. 读取按键模块
完成按键的读取,以使系统在运行时,按任意键均可退出系统。
三.课程设计要求
绘制一个简洁、精美的时钟面板,并在时钟表的外框左上面写入设计者的姓名;
显示12个整点时间刻度,绘制形状不同的时、分、秒三根指针,并便于读出时间;
启动系统时,读取系统时间,开始机械表的运转;
秒针转一圈后,分钟转1/60圈;秒针转一圈后,时针转1/(60*12)圈,即分针转12圈,时针转一圈;
按任意键均可退出时钟系统;
尽可能根据当前显示的时间,在时钟表的外框右上角显示出当前是上午(A.M.)还是下午(P.M.)。
就这些了 我是菜鸟一个 请大侠帮忙!!~~

#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);