C语言编写时钟程序,,急急急急急急!!!!
本人急需一个用C语言编写的C程序。请大家帮忙了。复制的也可以,网上下的也可以,能编译,运行就好了。谢了。还有问题请留言!!!谁能帮忙不胜感激!运行的环境VC++6.0...
本人急需一个用C语言编写的C程序。请大家帮忙了。复制的也可以,网上下的也可以,能编译,运行就好了。谢了。还有问题请留言!!!谁能帮忙不胜感激!
运行的环境VC++6.0 展开
运行的环境VC++6.0 展开
展开全部
刚做好一个,功能比较简单(年,月,日,时,分,秒).喜欢的拿去用:
#include "stdio.h"
#include "time.h"
#include "dos.h"
#include "windows.h"
#include "string.h"
#include "ctype.h"
int year_r(); //显示年
int month_h(); //月
int date_e(); //日
int time_e(); //时间
char * time_ta(); //将日期时间转换成字符串
int wait_t(); //延时1秒
char * time_ta() //将日期时间转换成字符串
{
char *q;
time_t t;
t=time(NULL);
q=ctime(&t);
//printf("*q_address = 0x%x\n",q);
return (q);
}
int wait_t() //延时1秒
{
long temp_total=0;
time_t time_temp;
time_temp=time(NULL);
temp_total=time_temp;
for(;;)
{
time_temp=time(NULL);
if(abs(time_temp - temp_total) >=1)
break;
}
return (0);
}
int main()
{
int temp;
system("cls"); //清屏
printf("\n\n\n\n\n\n\n\n\t\t\t");
year_r();
printf("年");
temp = month_h();
if (temp != 13)
{
printf("%d",temp);
printf("月");
}
else printf("month error!\n");
date_e();
printf("日");
time_e();
printf("\r");
for(;;) //显示年月日时分秒
{
wait_t(); // 1秒钟到显示年月日时分秒
system("cls");
printf("\n\n\n\n\n\n\n\n\t\t\t");
year_r();
printf("年");
temp = month_h();
if (temp != 13)
{
printf("%d",temp);
printf("月");
}
else printf("month error!\n");
date_e();
printf("日");
time_e();
}
getchar();
}
int year_r() //显示年
{
char *p;
int i;
p=time_ta();
for(i=0;i<24;i++,p++) //ctime函数返回字符为24个
if(i>19&&i<24)
printf("%c",*p);
return (0);
}
int month_h() //显示月
{
char month_n[12][5]={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
char *p;
char month[4]; //存放三个字符
int i,j=0;
p=time_ta();
for(i=0;i<24;i++,p++) //i<24因为ctime()函数返回有24个字符
{
if(i>=4 && i<7) //取ctime函数返回值的第5--8共三个字符.
{
month[j++]=*p;
if(j==3)
{
month[j]='\0';
break;
}
}
}
for (i=0;i<12;i++)
{
if (strcmp(month_n[i],month) == 0)
{
return (i+1);
}
}
return (13);
}
int date_e() //日
{
int j=0,i=0;
char date[2];
char *p;
p=time_ta();
for(i=0;i<24;i++,p++)
if(i>=8&&i<10)
{ date[j]=*p;
printf("%c",date[j++]);}
return 0;
}
int time_e() //时间
{ int i;
char *p;
p=time_ta();
for(i=0;i<24;i++,p++)
if(i>10&&i<19)
printf("%c",*p);
printf("\n");
return (0);
}
#include "stdio.h"
#include "time.h"
#include "dos.h"
#include "windows.h"
#include "string.h"
#include "ctype.h"
int year_r(); //显示年
int month_h(); //月
int date_e(); //日
int time_e(); //时间
char * time_ta(); //将日期时间转换成字符串
int wait_t(); //延时1秒
char * time_ta() //将日期时间转换成字符串
{
char *q;
time_t t;
t=time(NULL);
q=ctime(&t);
//printf("*q_address = 0x%x\n",q);
return (q);
}
int wait_t() //延时1秒
{
long temp_total=0;
time_t time_temp;
time_temp=time(NULL);
temp_total=time_temp;
for(;;)
{
time_temp=time(NULL);
if(abs(time_temp - temp_total) >=1)
break;
}
return (0);
}
int main()
{
int temp;
system("cls"); //清屏
printf("\n\n\n\n\n\n\n\n\t\t\t");
year_r();
printf("年");
temp = month_h();
if (temp != 13)
{
printf("%d",temp);
printf("月");
}
else printf("month error!\n");
date_e();
printf("日");
time_e();
printf("\r");
for(;;) //显示年月日时分秒
{
wait_t(); // 1秒钟到显示年月日时分秒
system("cls");
printf("\n\n\n\n\n\n\n\n\t\t\t");
year_r();
printf("年");
temp = month_h();
if (temp != 13)
{
printf("%d",temp);
printf("月");
}
else printf("month error!\n");
date_e();
printf("日");
time_e();
}
getchar();
}
int year_r() //显示年
{
char *p;
int i;
p=time_ta();
for(i=0;i<24;i++,p++) //ctime函数返回字符为24个
if(i>19&&i<24)
printf("%c",*p);
return (0);
}
int month_h() //显示月
{
char month_n[12][5]={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
char *p;
char month[4]; //存放三个字符
int i,j=0;
p=time_ta();
for(i=0;i<24;i++,p++) //i<24因为ctime()函数返回有24个字符
{
if(i>=4 && i<7) //取ctime函数返回值的第5--8共三个字符.
{
month[j++]=*p;
if(j==3)
{
month[j]='\0';
break;
}
}
}
for (i=0;i<12;i++)
{
if (strcmp(month_n[i],month) == 0)
{
return (i+1);
}
}
return (13);
}
int date_e() //日
{
int j=0,i=0;
char date[2];
char *p;
p=time_ta();
for(i=0;i<24;i++,p++)
if(i>=8&&i<10)
{ date[j]=*p;
printf("%c",date[j++]);}
return 0;
}
int time_e() //时间
{ int i;
char *p;
p=time_ta();
for(i=0;i<24;i++,p++)
if(i>10&&i<19)
printf("%c",*p);
printf("\n");
return (0);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
http://hi.baidu.com/fengaiguo/blog/item/842c570f6baad52f6059f3dd.html
地址
/********************************************************************
程序名称:用C语言编写的艺术时钟程序
功能描述: 运行程序后,会出现一个活动的时钟界面
所用函数:setwritemode(1); gettime(t);
编写日期:2006/X/X
修改日期:2008/4/8/20:31
注意事项:要修改Options>linker>Graphics library——改为On
/*******************************************************************/
#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);
/******************* fun---init *************************/
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);
}
}
/***struct time{ h=t[0].ti_hour;m=t[0].ti_min;s=t [0].ti_sec;};******/
/*********** main **************************************************/
main()
{ int x,y;
int gdriver=DETECT,gmode;
unsigned char h,m,s;
struct time t[1];
initgraph(&gdriver,&gmode,"c:\\tc\\bgi");
init();
setwritemode(1);
gettime(t);
h=t[0].ti_hour;
m=t[0].ti_min;
s=t[0].ti_sec;
setcolor(7); setlinestyle(0,0,3); d(130,h,30);
setcolor(14); setlinestyle(0,0,2); d(165,m,6);
setcolor(4); setlinestyle(0,0,1); d(190,s,6);
/********* while ******************************************************/
while(!kbhit())
{ while(t[0].ti_sec==s) gettime(t);
sound(400); delay(70); 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,4);
m=t[0].ti_min; d(170,m,4);
}
if(t[0].ti_hour!=h)
{setcolor(7); d(150,h,30);
h=t[0].ti_hour; d(150,h,30);
sound(1000); delay(140);
sound(2000); delay(240);
nosound();
}
}
getch();
closegraph();
}
/******************************************END*****************************/
地址
/********************************************************************
程序名称:用C语言编写的艺术时钟程序
功能描述: 运行程序后,会出现一个活动的时钟界面
所用函数:setwritemode(1); gettime(t);
编写日期:2006/X/X
修改日期:2008/4/8/20:31
注意事项:要修改Options>linker>Graphics library——改为On
/*******************************************************************/
#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);
/******************* fun---init *************************/
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);
}
}
/***struct time{ h=t[0].ti_hour;m=t[0].ti_min;s=t [0].ti_sec;};******/
/*********** main **************************************************/
main()
{ int x,y;
int gdriver=DETECT,gmode;
unsigned char h,m,s;
struct time t[1];
initgraph(&gdriver,&gmode,"c:\\tc\\bgi");
init();
setwritemode(1);
gettime(t);
h=t[0].ti_hour;
m=t[0].ti_min;
s=t[0].ti_sec;
setcolor(7); setlinestyle(0,0,3); d(130,h,30);
setcolor(14); setlinestyle(0,0,2); d(165,m,6);
setcolor(4); setlinestyle(0,0,1); d(190,s,6);
/********* while ******************************************************/
while(!kbhit())
{ while(t[0].ti_sec==s) gettime(t);
sound(400); delay(70); 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,4);
m=t[0].ti_min; d(170,m,4);
}
if(t[0].ti_hour!=h)
{setcolor(7); d(150,h,30);
h=t[0].ti_hour; d(150,h,30);
sound(1000); delay(140);
sound(2000); delay(240);
nosound();
}
}
getch();
closegraph();
}
/******************************************END*****************************/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-10-08
展开全部
fgfgddgd
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询