#include#include #include #include char buf[25][80]; void Gen_line(int,int,int,int); int main(){ int x1=5, y1=0; int x2=25, y2=0; int x3=30, y3=10; int y; memset(&buf[0][0],' ',25*80); Gen_line(x1,y1,x2,y2); Gen_line(x2,y2,x3,y3); Gen_line(x3,y3,x1,y1); for(y=24; y > =0; y--){ printf("%.80s",&buf[y][0]); } fflush(stdout); return 0; } void Gen_line(int xS, int yS, int xE, int yE){ double dx, dy, a = 0, b=0; int x,y; buf[yS][xS]='*'; buf[yE][xE]='*'; if(xS==xE){ if(yS > yE){ y = yS; yS = yE; yE=y;} for(y=yS+1; y xE){ x=xS; xS=xE;xE=x;y=yS;yS=yE;yE=y; } dx=xE-xS; dy=yE-yS; a=dy/dx; b=yS-a*xS; for(x = xS+1; x < xE; x++){ y=a*x + b + 0.5; buf[y][x]= '*'; } } }
$ ./main
** ** *** * ** *** * ** *** * ** *** * ** *********************
三角形になってる? 意味がわからん