qq_23725321 2015-12-23 06:15 采纳率: 0%
浏览 1442

vc6.0模拟时钟问题,两个循环无法同时运行

#include "graphics.h"
#include "conio.h"
#include "time.h"
#include "math.h"
int main(){
int x0=400,y0=200;
int x1=0,y1=0;
int h=0;
int m=0;
int r=90;
int b=0,c=0,d=0,e=0;
char T[]="00:00:00";
char S[]="0123456789";
double pi=3.14159;
initgraph(800,600);

for(int i=0;i<=360;i+=6){
cleardevice();
setlinecolor(YELLOW);
circle(x0,y0,r+18);
setlinecolor(CYAN);
circle(x0,y0,r+10);

x1=(int)(r*cos((i-90)*pi/180)+x0);
y1=(int)(r*sin((i-90)*pi/180)+y0);
line(x0,y0,x1,y1);

if(i==360){
m+=6;i=0;
}
x1=(int)((r-20)*cos((m-90)*pi/180)+x0);
y1=(int)((r-20)*sin((m-90)*pi/180)+y0);
line(x0,y0,x1,y1);

if(m==360){
h+=30;m=0;
}
x1=(int)((r-30)*cos((h-90)*pi/180)+x0);
y1=(int)((r-30)*sin((h-90)*pi/180)+y0);
line(x0,y0,x1,y1);
Sleep(1000);
for(int a=0;a<60;a++){
if(a<10){
T[6]='0';
T[7]=S[a];
}else{
b=a%10;
c=a/10;
T[6]=S[c];
T[7]=S[b];
}

if(d<10){
T[3]='0';
T[4]=S[d];
}else{
b=d%10;
c=d/10;
T[3]=S[c];
T[4]=S[b];
}
if(e<10){
T[0]='0';
T[1]=S[e];
}else{
b=e%10;
c=e/10;
T[0]=S[c];
T[1]=S[b];
}

outtextxy(400,500,T);
Sleep(1000);
if(a>=59){
a=-1;
d++;
}
if(d>60){
d=0;
e++;

}
if(e>=24){
e=0;
}
}
}
if(i>360){
i=0;
}

getch();
closegraph();

return 0;
}
如何才能让

如何才能让电子时钟和时钟的指针同时动起来
谢谢
我用的VC6.0打了easyx的插件图片说明

  • 写回答

1条回答 默认 最新

  • 关注

    1、用2个线程分别用来刷新时间和时钟
    2、放在同一个循环里面

    评论

报告相同问题?

悬赏问题

  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误
  • ¥30 最小化遗憾贪心算法上界
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝