📄 lt88.c
字号:
# include "stdio.h"
# include "graphics.h"
# define X0 500
# define X1 100
# define Y0 100
# define Y1 300
void main( )
{
int g_driver,g_mode,g_error;
g_driver=VGA;
g_mode=VGAHI;
initgraph(&g_driver,&g_mode,"");
g_error=graphresult();
if (g_error<0)
{printf("initgraph error: %s\n",grapherrormsg(g_error));
exit(1);
};
midpointline(X0,Y0,X1,Y1,YELLOW);
}
midpointline(x0,y0,x1,y1,color)
int x0,y0,x1,y1,color;
{
int i,a,b,delta1,j,k,s1,s2,delta2,d,x,y;
cleardevice();
for (j=1;j<=5;j++)
{
x=x0;
y=y0;
delta1=abs(x1-x0);
delta2=abs(y1-y0);
if (x1-x0>=0)
s1=1;
else
s1=-1;
if (y1-y0>=0)
s2=+1;
else
s2=-1;
if (delta2>delta1)
{
a=delta1;
delta1=delta2;
delta2=a;
b=1;
}
else
b=0;
d=2*delta2-delta1;
for (i=1;i<=delta1;i++)
{
if (j<=2)
putpixel(x,y,GREEN);
else if (j<=3)
putpixel(x,y,WHITE);
else
putpixel(x,y,color);
if (d>=0)
if (b=1)
x=x+s1;
else
{
y=y+s2;
d=d-2*delta1;
}
if (b=1)
y=y+s2;
else
{
x=x+s1;
d=d+2*delta2;
}
}
if (j<=2)
{
x0=100;
x1=500;
y0=100;
y1=300;
}
else if(j<=3)
{
x0=300;
x1=0;
y0=100;
y1=150;
}
}
getchar();
textmode(180);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -