绍兴市建设局网站,python报班一般多少钱,兰州做网站客户,美橙互联 wordpress哈哈#xff0c;就是喜欢这些有意思的C语言上篇文章是这样写的c语言画谢宾斯基三角形那篇文章写的有点不直接#xff0c;然后再查了下资料#xff0c;看到了下面这些#xff0c;我觉得解释更加好#xff0c;这里主要是运用了光栅法#xff0c;至于光栅法#xff0c;可以… 哈哈就是喜欢这些有意思的C语言上篇文章是这样写的c语言画谢宾斯基三角形那篇文章写的有点不直接然后再查了下资料看到了下面这些我觉得解释更加好这里主要是运用了光栅法至于光栅法可以百度看看后面我会再写文章理理。我知道这样的原创文章没有多少人会喜欢但是我觉得很有意思如果你也有意思帮忙支持下。如果我们想画一个正方形要怎么画呢?看代码#include stdio.h#define h 20
#define w 40int main()
{int x,y;for(y0;yh;y,putchar(\n))for(x0;xw;x)putchar(*);getchar();return 0;
}
程序输出img如果我要画一个三角形呢我们首先要知道的是三角形在坐标轴中的公式先搞定一个直角三角形我们使用c 语言字符的画x ,y 轴和上面情况不同实际如下图直角三角形在坐标轴中的公式所以我们代码这样写#include stdio.h#define h 20
#define w 40int f(int x,int y)
{return x y;
}int main()
{int x,y;for(y0;yh;y,putchar(\n))for(x0;xw;x)putchar(* [f(x,y)?0:1]);getchar();return 0;
}
但是如果要画一个普通的三角形呢很简单还是看看数学的公式要画出题目中的大三角形我们可以使用绝对值xc 表示x 轴坐标#include stdio.h#define h 20
#define w 40int f(int x,int y)
{return abs(x - 20) y;
}int main()
{int x,y;for(y0;yh;y,putchar(\n))for(x0;xw;x)putchar(* [f(x,y)?0:1]);getchar();return 0;
}
程序输出如果我们想在坐标轴上画很多个三角形呢把上面的代码修改一下
#include stdio.h#define h 20
#define w 20/*画直角三角形的函数*/
int s(int x, int y) {return abs(x) y;
}/*直角三角形的坐标系 - 2是为了偏移x坐标*/
int f(int x,int y)
{return s(x%6 -2,y%3);
}int main()
{int x,y;for(y0;yh;y,putchar(\n))for(x0;xw;x){putchar(* [f(x,y)?0:1]);putchar( );}getchar();return 0;
}
程序输出但是这个三角形和之前说的谢宾斯基不一样所以我们代码需要还修改下#include stdio.h#define h 20
#define w 40/*画直角三角形的函数*/
int s(int x, int y) {return abs(x) y;
}/*y / 3 是三角形的行数y / 3 * 3 是对每行三角形偏移半个三角形
包括一个空白后三角形总宽是6然后再偏移半个三角形 Mip大神写的*/
int f(int x,int y)
{return s((x y / 3 * 3 3) % 6 - 2, y % 3);
}int main()
{int x,y;for(y0;yh;y,putchar(\n))for(x0;xw;x){putchar(* [f(x,y)?0:1]);putchar( );}getchar();return 0;
}
代码输出现在就还差最后一步就是怎么把一些多余的三角形给干掉使用 符号迎刃而解#include stdio.h#define h 18
#define w 38/*画直角三角形的函数*/
int s(int x, int y) {return abs(x) y;
}/*y / 3 是三角形的行数y / 3 * 3 是对每行三角形偏移半个三角形
包括一个空白后三角形总宽是6然后再偏移半个三角形 Mip大神写的*/
int f(int x,int y)
{return s(x-17,y)s((x y / 3 * 3 3) % 6 - 2, y % 3);
}int main()
{int x,y;for(y0;yh;y,putchar(\n)){for(x0;xw;x){putchar(* [f(x,y)?0:1]);putchar( );}}getchar();return 0;
}
代码输出推荐阅读专辑|Linux文章汇总专辑|程序人生专辑|C语言我的知识小密圈