样例:一、设计题目:(宋体五号加黑)有滴答声音的全屏模拟时钟.(宋体五号)二、题目阐述及设计思路:这是一个有声音的全屏模拟时钟,有时针、分针和秒针.根据题目要求,采用C语言
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/26 01:36:02
![样例:一、设计题目:(宋体五号加黑)有滴答声音的全屏模拟时钟.(宋体五号)二、题目阐述及设计思路:这是一个有声音的全屏模拟时钟,有时针、分针和秒针.根据题目要求,采用C语言](/uploads/image/z/11953762-34-2.jpg?t=%E6%A0%B7%E4%BE%8B%EF%BC%9A%E4%B8%80%E3%80%81%E8%AE%BE%E8%AE%A1%E9%A2%98%E7%9B%AE%EF%BC%9A%EF%BC%88%E5%AE%8B%E4%BD%93%E4%BA%94%E5%8F%B7%E5%8A%A0%E9%BB%91%EF%BC%89%E6%9C%89%E6%BB%B4%E7%AD%94%E5%A3%B0%E9%9F%B3%E7%9A%84%E5%85%A8%E5%B1%8F%E6%A8%A1%E6%8B%9F%E6%97%B6%E9%92%9F.%EF%BC%88%E5%AE%8B%E4%BD%93%E4%BA%94%E5%8F%B7%EF%BC%89%E4%BA%8C%E3%80%81%E9%A2%98%E7%9B%AE%E9%98%90%E8%BF%B0%E5%8F%8A%E8%AE%BE%E8%AE%A1%E6%80%9D%E8%B7%AF%EF%BC%9A%E8%BF%99%E6%98%AF%E4%B8%80%E4%B8%AA%E6%9C%89%E5%A3%B0%E9%9F%B3%E7%9A%84%E5%85%A8%E5%B1%8F%E6%A8%A1%E6%8B%9F%E6%97%B6%E9%92%9F%2C%E6%9C%89%E6%97%B6%E9%92%88%E3%80%81%E5%88%86%E9%92%88%E5%92%8C%E7%A7%92%E9%92%88.%E6%A0%B9%E6%8D%AE%E9%A2%98%E7%9B%AE%E8%A6%81%E6%B1%82%2C%E9%87%87%E7%94%A8C%E8%AF%AD%E8%A8%80)
样例:一、设计题目:(宋体五号加黑)有滴答声音的全屏模拟时钟.(宋体五号)二、题目阐述及设计思路:这是一个有声音的全屏模拟时钟,有时针、分针和秒针.根据题目要求,采用C语言
样例:
一、设计题目:(宋体五号加黑)
有滴答声音的全屏模拟时钟.(宋体五号)
二、题目阐述及设计思路:
这是一个有声音的全屏模拟时钟,有时针、分针和秒针.根据题目要求,采用C语言自带的画图函数为主要框架,其中各个运算部分运用C语言的函数和基本算法的知识.其余各部分衔接运用顺序结构,分支结构和循环结构.主要内容确定之后,调用所需函数,根据上述计划编译了这段程序.
三、主要知识点:
使用文件包含、C语言宏定义、图形界面的使用、系统函数调用函数.
四、程序清单:
#include
#include
#include
#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);
略……
五、设计结果说明:
1、设计优点:
2、设计不足:
样例:一、设计题目:(宋体五号加黑)有滴答声音的全屏模拟时钟.(宋体五号)二、题目阐述及设计思路:这是一个有声音的全屏模拟时钟,有时针、分针和秒针.根据题目要求,采用C语言
#include "stdio.h"
#include "math.h"
#include "dos.h"
#include "graphics.h"
#define PI 3.1415926
#define th PI/180
#define a 60
void DrawXin(int x0,int y0,int k) ;
void main()
{
int gr=DETECT,gm;
float th_hour,th_min,th_sec,end_x,end_y;
struct time now;
initgraph(&gr,&gm,"c:\\turboc2");
cleardevice();
DrawXin(320,200,90);
while (!kbhit())
{
setcolor(YELLOW);
gettime(&now);
/*printf("%.f,%.f,%.f\t",(float)now.ti_hour,(float)now.ti_min,(float)now.ti_sec);*/
th_sec=( 90-(float)now.ti_sec*6 )*th ;
th_min=(90-( (float)now.ti_min+(float)now.ti_sec/60.0 )*6 )*th;
th_hour=(90-( (float)now.ti_hour+(float)now.ti_min/60.0+(float)now.ti_sec/3600.0)*12)*th;
/* printf("hour:%.f,min:%.f,sec:%.f\n",th_hour,th_min,th_sec);*/
/*画秒针*/
end_x=320+cos(th_sec)*120;
end_y=240-sin(th_sec)*120;
line(320,240,end_x,end_y);
/*画分针*/
end_x=320+cos(th_min)*90;
end_y=240-sin(th_min)*90;
line(320,240,end_x,end_y);
/*画时针*/
end_x=320+cos(th_hour)*60;
end_y=240-sin(th_hour)*60;
line(320,240,end_x,end_y);
sleep(1);
/*隐藏时钟*/
setcolor(RED);
end_x=320+cos(th_sec)*120;
end_y=240-sin(th_sec)*120;
line(320,240,end_x,end_y);
end_x=320+cos(th_min)*90;
end_y=240-sin(th_min)*90;
line(320,240,end_x,end_y);
end_x=320+cos(th_hour)*60;
end_y=240-sin(th_hour)*60;
line(320,240,end_x,end_y);
}
}
/*画心型钟界面*/
void DrawXin(int x0,int y0,int k)
{
float i,x,y,tx,ty;
for(i=-180.0;i