c语言课程设计实验报告

发布 2022-10-05 04:51:28 阅读 8303

c语言课程设计报告。

学院:通信与信息工程学院。

专业:电子信息工程。

班级:1104

姓名:张帝。

学号:1107050415

日期:2012-6-20 wednesday

一:选题。1. 整点声音报时时钟:

a.针式表盘界面(方形或圆形);

b.有时针+分针+秒针并正确旋转;

c.时间须与系统时间相一致,秒针具有”滴答”声音效果。并实现整点报时。

二:源程序c语言**。

#include <>

#define pi 3.1416

#include""

#include""

void init_sceen(int,int,int); 画时钟屏幕*/

void sec();

void main()

int x0=320,y0=240,r0=150时钟的中心位置(320,240) 以及半径(150) *

init_sceen(x0,y0,r0);

sec();

closegraph();

void init_sceen(int x0,int y0,int r0)

int i,x,y,graphdriver,graphmode;

char s[10];

float alpha,a0=90;

graphdriver=detect;

initgraph(&graphdriver,&graphmode,""初始化图形系统 */

setbkcolor(0设置背景颜色为黑色 */

setcolor(2用绿色画出时钟的边框 */

fillellipse(x0,y0,r0,r0+50);

fillellipse(x0,y0,r0+30,r0+80);

setfillstyle(1,1把时钟钟面以外都填成蓝色 */

floodfill(x0-r0-50,y0,2);

for(i=12;i>=1;i--)计算出数字1~12的位置并在相应的位置输出数字*/

画出刻度*/

for(i=60;i>=1;i--)

setlinestyle(0,0,3);

以上部分的作用是完成表盘的设计*/

void sec(void)

int x,y,i,j,k,xj,yj,xk,yk,xi,yi,x0=320,y0=240,r0=150;

union regs r;

unsigned char *shijian=""

unsigned char *daa=""

struct time tim;

struct date dat;

float alphai,alphak,alphaj,a0=90;

xi=x0;yi=y0;xj=x0;yj=y0;xk=x0;yk=y0;

dox=38;y=12;

gettime(&tim从本机中获取时间 */

sprintf(shijian,"%02d:%02d:%02d",获取日期*/

getdate(&dat);

sprintf(daa,"%02d--%02d--%02d",bar(255,290,385,310一数字的形式输出日期 */

setcolor(red);

outtextxy(275,295,daa);

x=290;y=460;

setcolor(red);

outtextxy(100,y,"designed by yang fan");在指定位置显示字符 */

setcolor(lightred);

outtextxy(x,y0+20," watch ")

setlinestyle(0,0,3);k=j=

i=alphak=(a0+30*(12-k)-j*5/60.*6)*pi/180;

alphaj=(a0-6*j)*pi/180;

画秒针 */

alphai=(a0+6*(60-i))*pi/180;

x=x0+cos(alphai)*(r0-32);

y=y0-sin(alphai)*(r0-32);

setcolor(white);

line(x0,y0,xi,yi);

setcolor(red);

line(x0,y0,x,y);

xi=x;yi=y;

画分针 */

x=x0+cos(alphaj)*(r0-60);

y=y0-sin(alphaj)*(r0-60);

setcolor(white);

line(x0,y0,xj,yj);

setcolor(12);

line(x0,y0,x,y);

xj=x;yj=y;

画时针 */

x=x0+cos(alphak)*(r0-80);

y=y0-sin(alphak)*(r0-80);

setcolor(white);

line(x0,y0,xk,yk);

setcolor(13);

line(x0,y0,x,y);

xk=x;yk=y;

delay(1000);

while(!kbhit在不按任何键的时候执行上面的命令。 即按任何键退出 */

三:修改后的c程序**。

注:修改的地方用红色标注。

#include <>

#define pi 3.1416

#include""

#include""

void init_sceen(int,int,int); 画时钟屏幕*/

void sec

void main()

int x0=320,y0=240,r0=160时钟的中心位置(320,240) 以及半径(160) *init_sceen(x0,y0,r0);

sec();

closegraph();

void init_sceen(int x0,int y0,int r0)

int i,x,y,graphdriver,graphmode;

char s[10];

float alpha,a0=90;

graphdriver=detect;

initgraph(&graphdriver,&graphmode,""初始化图形系统 */

setbkcolor(11

setcolor(2用绿色画出时钟的边框 */

fillellipse(x0,y0,r0,r0+30);

fillellipse(x0,y0,r0+30,r0+80);

setfillstyle(10,12);

floodfill(x0-r0-50,y0,2);

for(i=12;i>=1;i--)计算出数字1~12的位置并在相应的位置输出数字*/

画出刻度*/

for(i=60;i>=1;i--)

setlinestyle(0,0,3);

以上部分的作用是完成表盘的设计*/

void sec(void)

int x,y,i,j,k,xj,yj,xk,yk,xi,yi,x0=320,y0=240,r0=150;

union regs r;

unsigned char *shijian=""

unsigned char *daa=""

struct time tim;

struct date dat;

float alphai,alphak,alphaj,a0=90;

xi=x0;yi=y0;xj=x0;yj=y0;xk=x0;yk=y0;

dox=38;y=12;

c语言课程设计实验报告

课程设计报告。1 设计内容及要求。1.1设计内容。备忘录 主要根据课程设计要求进行设计,能够进行个人的事件记录,可以将程序使用者的时间安排,重要事件,以及个人行程等事件做出具体详细的记述,并能够使使用者在程序上完成查看时间的功能,足以使得使用者避免忘记一些重要事件,也可以为使用者带来一些便利,帮助使...

C语言课程设计实验报告

数据库课程设计实验报告。学校 东华理工大学长江学院。专业 统计学。学号 姓名 一 实验目的。编制一个程序,将屏幕垂直分成四个窗口,左上边窗口为蓝色前景,右上边窗口为红色前景,左下角窗口为洋红色前景,右下角前景为白色前景,四个窗口设置为文本输入,即在窗口中可以输入文字,在窗口屏幕中可以显示出来,使用t...

c语言课程设计实验报告

实验目的。掌握c程序设计编程环境visual c 掌握运行一个c程序的基本步骤,包括编辑 编译 链接和运行。实验要求。在报告中记录建立 保存c程序实习过程。实验基本内容。编写程序,在屏幕上显示一个短句 hello world 程序 1 编译如下程序 include void main 2 链接。执行...