📄 jiemian.c
字号:
outtextxy(31,72,s10);
line(41,390,540,390);
line(540,390,535,387);
line(540,390,535,393);
line(41,390,41,70);
line(41,70,38,75);
line(41,70,43,75);
for(i=1;i<61;i++)
{
if(i>=10&i%10==0)
{
line(41+8*i,390,41+8*i,383);
}
else
{
line(41+8*i,390,41+8*i,387);
}
}
settextstyle(0,0,1);
for(j=0;j<21;j++)
{
line(41,390-j*15,43,390-j*15);
if(j%2==0) {outtextxy(31,386-j*15,s0);}
else {outtextxy(31,386-j*15,s5);}
}
for(k=2;k<21;k+=2)
{switch(k)
{ case 2:{outtextxy(23,386-k*15,s1);outtextxy(23,386-(k+1)*15,s1);} break;
case 4:{outtextxy(23,386-k*15,s2);outtextxy(23,386-(k+1)*15,s2);} break;
case 6:{outtextxy(23,386-k*15,s3);outtextxy(23,386-(k+1)*15,s3);} break;
case 8:{outtextxy(23,386-k*15,s4);outtextxy(23,386-(k+1)*15,s4);} break;
case 10:{outtextxy(23,386-k*15,s5);outtextxy(23,386-(k+1)*15,s5);} break;
case 12:{outtextxy(23,386-k*15,s6);outtextxy(23,386-(k+1)*15,s6);} break;
case 14:{outtextxy(23,386-k*15,s7);outtextxy(23,386-(k+1)*15,s7);} break;
case 16:{outtextxy(23,386-k*15,s8);outtextxy(23,386-(k+1)*15,s8);} break;
case 18:{outtextxy(23,386-k*15,s9);outtextxy(23,386-(k+1)*15,s9);} break;
case 20:{outtextxy(23,386-k*15,s0);outtextxy(15,386-k*15,s1);} break;
default:break;
}
}
/*settextstyle(0,0,1);*/
/*sprintf(s2,"5");*/
/*outtextxy(30,30,s2);*/
setcolor(WHITE);
line(41,240,540,240);
}
void var(float x,int x1,int y1)
{
char i;
int value,x0,y0;
char s0[2],s1[2],s2[2],s3[2],s4[2],s5[2],s6[2],s7[2],s8[2],s9[2],s10[2],s11[2];
x0=x1;
y0=y1;
settextstyle(0,0,1);
sprintf(s0,"0");
sprintf(s1,"1");
sprintf(s2,"2");
sprintf(s3,"3");
sprintf(s4,"4");
sprintf(s5,"5");
sprintf(s6,"6");
sprintf(s7,"7");
sprintf(s8,"8");
sprintf(s9,"9");
sprintf(s10,"%");
sprintf(s11,".");
for(i=0;i<3;i++)
{
switch(i)
{
case 0:
{if(x<1.0)
{
value=x*10;
outtextxy(x0-10,y0,s0);
outtextxy(x0+7,y0,s10);
/*circle(x0-2,y0+5,1);*/
outtextxy(x0-5,y0,s11);
}
else
{
if((int)(x*10)%10!=0)
{value=(int)(x*10)%10;
outtextxy(x0+7,y0,s10);
outtextxy(x0-5,y0,s11);
}
}
} break;
case 1:
{
if(1.0<x&x<10.0)
{
if((int)(x*10)%10==0) {outtextxy(x0,y0,s10);value=x;}
else {value=(int)x;outtextxy(x0+7,y0,s10);}
}
else if(x>10)
{
if((int)(x*10)%10==0) {value=(int)x%10;outtextxy(x0-2,y0,s10);}
else {value=(int)x%10;outtextxy(x0+7,y0,s10);}
}
} break;
case 2:
{
if(x>10)
{
if((int)(x*10)%10==0) {value=x/10;}
else {value=(int)(x/10);}
}
} break;
default: break;
}
switch(value)
{
case 0: {outtextxy(x0-i*10,y0,s0);} break;
case 1: {outtextxy(x0-i*10,y0,s1);} break;
case 2: {outtextxy(x0-i*10,y0,s2);} break;
case 3: {outtextxy(x0-i*10,y0,s3);} break;
case 4: {outtextxy(x0-i*10,y0,s4);} break;
case 5: {outtextxy(x0-i*10,y0,s5);} break;
case 6: {outtextxy(x0-i*10,y0,s6);} break;
case 7: {outtextxy(x0-i*10,y0,s7);} break;
case 8: {outtextxy(x0-i*10,y0,s8);} break;
case 9: {outtextxy(x0-i*10,y0,s9);} break;
default: break;
}
value=10;
}
}
void setchan(char i)
{
setcolor(YELLOW);
switch(i)
{
case 1:{setfillstyle(1,BLACK);circle(15,445,3);floodfill(15,445,YELLOW);} break;
case 2:{setfillstyle(1,BLACK);circle(104,445,3);floodfill(104,445,YELLOW);} break;
case 3:{setfillstyle(1,BLACK);circle(193,445,3);floodfill(193,445,YELLOW);} break;
default: break;
}
}
void trendswindow(float ld,float nd,char chan)
{
void showtime_axes(int x0,int y0, int a,int b);
int i=0,j=0,a0=0,b0=0;
unsigned int step_t=0;
struct time t;
setchan(chan);
setfillstyle(SOLID_FILL,GREEN);
bar(579,332,632,348);
bar(579,362,632,378);
setcolor(YELLOW);
var(ld,617,336);
setcolor(RED);
var(nd,617,366);
if(ndarray[60]==0&ndarray[60]==0)
{
counter+=1;
ldarray[counter-1]=(int)ld;
ndarray[counter-1]=(int)nd;
/* printf("counter=%d,ndarray=%d\r",counter,ndarray[counter-1]);*/
for(i=counter-1;i>0;i--)
{
if(counter>1&counter<61)
{
setcolor(RED);
line((41+8*i),(390-3*ldarray[i]),41+8*(i-1),(390-3*ldarray[i-1]));
setcolor(YELLOW);
line((41+8*i),(390-3*ndarray[i]),41+8*(i-1),(390-3*ndarray[i-1]));
}
}
if(counter==61) {counter=0;start=clock();}
}
else
{
counter+=1;
/* printf("%d",counter);*/
templd[counter-1]=(int)ld;
tempnd[counter-1]=(int)nd;
end=clock();
step_t=(int)(end-start)/CLK_TCK;
total_t+=step_t;
printf("%d\r",total_t);
if(total_t>=60)
{
setfillstyle(SOLID_FILL,CYAN);
bar(8,62,539,420);
setfillstyle(SOLID_FILL,LIGHTGRAY);
bar(420,22,634,56);
drawcoordinate();
total_t=0;
for(j=0;j<60;j++)
{
ldarray[j]=ldarray[j+1];
ndarray[j]=ndarray[j+1];
}
for(j=0;j<counter;j++)
{
sum1+=templd[j];
sum2+=tempnd[j];
/* getch();*/
/* printf("sum2=%d\n",sum2);*/
}
ldarray[60]=(int)(sum1/counter);
ndarray[60]=(int)(sum2/counter);
/* printf("countert=%d,sum1=%d,templd=%d\r",counter,sum1,templd[counter-1]);*/
for(i=60;i>0;i--)
{
setcolor(RED);
line((41+8*i),(390-3*ldarray[i]),(41+8*(i-1)),(390-3*ldarray[i-1]));
setcolor(YELLOW);
line((41+8*i),(390-3*ndarray[i]),(41+8*(i-1)),(390-3*ndarray[i-1]));
}
counter=0;
sum1=0;
sum2=0;
for(j=0;j<100;j++)
{
templd[j]=0;
tempnd[j]=0;
}
/*printf("nd[0]=%d,nd[60]=%d",nd[0],nd[60]);*/
gettime(&t);
a0=(int)t.ti_hour;
b0=(int)t.ti_min;
setcolor(WHITE);
showtime_axes(580,35,a0,b0);
showtime_axes(500,400,a0,b0);
showdate(490,35);
for(j=0;j<6;j++)
{
if((a0-1)<0)
{
if((b0+j*10)<60) {showtime_axes(22+j*80,400,23,b0+j*10);}
else {showtime_axes(22+j*80,400,a0,b0+j*10-60);}
}
else
{
if((b0+j*10)<60) {showtime_axes(22+j*80,400,a0-1,b0+j*10);}
else {showtime_axes(22+j*80,400,a0,b0+j*10-60);}
}
}
start=clock();
}
else {start=clock();
}
}
}
void showtime_axes(int x0,int y0, int a,int b)
{
int value=10,i,a0,b0;
char s0[2],s1[2],s2[2],s3[2],s4[2],s5[2],s6[2],s7[2],s8[2],s9[2],s10[2];
a0=a;
b0=b;
settextstyle(0,0,1);
sprintf(s0,"0");
sprintf(s1,"1");
sprintf(s2,"2");
sprintf(s3,"3");
sprintf(s4,"4");
sprintf(s5,"5");
sprintf(s6,"6");
sprintf(s7,"7");
sprintf(s8,"8");
sprintf(s9,"9");
sprintf(s10,":");
for(i=0;i<5;i++)
{
switch(i)
{
case 0: {if(a0<10) {if(a0==0) {value=0;} else {value=10;}} else {value=(int)(a0/10);}} break;
case 1: {if(a0<10) {if(a0==0) {value=0;} else {value=a0;}} else {value=a0%10;}} break;
case 2: {outtextxy(x0+16,y0,s10);value=10;} break;
case 3: {if(b0<10) {value=0;} else {value=(int)b0/10;}} break;
case 4: {if(b0<10) {value=b0;} else {value=b0%10;}} break;
default: break;
}
switch(value)
{
case 0: {outtextxy(x0+i*8,y0,s0);} break;
case 1: {outtextxy(x0+i*8,y0,s1);} break;
case 2: {outtextxy(x0+i*8,y0,s2);} break;
case 3: {outtextxy(x0+i*8,y0,s3);} break;
case 4: {outtextxy(x0+i*8,y0,s4);} break;
case 5: {outtextxy(x0+i*8,y0,s5);} break;
case 6: {outtextxy(x0+i*8,y0,s6);} break;
case 7: {outtextxy(x0+i*8,y0,s7);} break;
case 8: {outtextxy(x0+i*8,y0,s8);} break;
case 9: {outtextxy(x0+i*8,y0,s9);} break;
default: break;
}
value=10;
}
}
void showdate(int x0,int y0)
{
int value=11,i,a0,b0,c0;
char s0[2],s1[2],s2[2],s3[2],s4[2],s5[2],s6[2],s7[2],s8[2],s9[2],s10[2];
struct date d;
getdate(&d);
a0=d.da_year;
b0=d.da_mon;
c0=d.da_day;
settextstyle(0,0,1);
sprintf(s0,"0");
sprintf(s1,"1");
sprintf(s2,"2");
sprintf(s3,"3");
sprintf(s4,"4");
sprintf(s5,"5");
sprintf(s6,"6");
sprintf(s7,"7");
sprintf(s8,"8");
sprintf(s9,"9");
sprintf(s10,"-");
for(i=0;i<10;i++)
{
switch(i)
{
case 0: {value=2;} break;
case 1: {value=0;} break;
case 2: {value=(int)(a0/10)%10;} break;
case 3: {value=a0%10;} break;
case 4: {value=10;} break;
case 5: {if(b0>10) {value=(int)b0/10;} else {value=b0;}} break;
case 6: {if(b0>10) {value=b0%10;} else {value=11;}} break;
case 7: {if(b0>10) {value=10;} else {outtextxy(x0+(i-1)*8,y0,s10);if(c0>10) {value=(int)(c0/10);} else {value=c0;}}} break;
case 8: {if(b0>10) {if(c0>10) {value=(int)(c0/10);} else {value=c0;}}
else {if(c0>10) {value=c0%10;} else {value=11;}}
} break;
case 9: {if(b0>10&c0>10) {value=c0%10;}} break;
default: break;
}
switch(value)
{
case 0: {outtextxy(x0+i*8,y0,s0);} break;
case 1: {outtextxy(x0+i*8,y0,s1);} break;
case 2: {outtextxy(x0+i*8,y0,s2);} break;
case 3: {outtextxy(x0+i*8,y0,s3);} break;
case 4: {outtextxy(x0+i*8,y0,s4);} break;
case 5: {outtextxy(x0+i*8,y0,s5);} break;
case 6: {outtextxy(x0+i*8,y0,s6);} break;
case 7: {outtextxy(x0+i*8,y0,s7);} break;
case 8: {outtextxy(x0+i*8,y0,s8);} break;
case 9: {outtextxy(x0+i*8,y0,s9);} break;
case 10: {outtextxy(x0+i*8,y0,s10);} break;
default: break;
}
value=11;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -