如何用C语言递归的方法画出底部形状只需要提供思路,不需要具体代码!谢谢你

画直线需要一个库函数。我们来谈谈想法。

将点的类型定义为具有二维坐标,例如struct point { double x;双y;}等等。

将多边形的类型定义为元素为点的线性表,如链表struct polygon { struct point * p;结构多边形* next},

您需要能够按顺序访问每个点,并且需要提供一个插入函数来执行插入点操作。

从一个等边三角形开始,一个多边形包含三个初始点,它们形成一个等边三角形。

以下思路是伪代码。

P =起点水头;;

做{

1.每个点P和下一个点P->;接着形成多边形的一条边,并求出边的长度;

2.求两条平分线q1和q2(求两点形成的线段的距离并进一步求平分线的方法写成函数,公式就不用说了);

3.将q1和q2插入P和P->;接下来之间;

4.以q1和q2为顶点,求向外生长的三角形的第三个顶点R(求R的坐标比较复杂,公式可以用,但我觉得可以根据六种情况下q1q2与X轴的夹角来简化计算);

5.在q1和q2之间插入R;

6.p = p->接下来;

} while (p!=起点头);

//每完成一个循环增加一轮,考虑多少轮才能满足需要。从图来看,第二个数字是3发。

接下来,p依次遍历多边形的各点画线(p,p->;下一个)

最后一个点和起点之间的Drawline(p,head)关闭图形。

完毕。