1. 使用C语言绘制圣诞树
方法一:使用标准输出
```c
include
int main() {
int height = 10;
for (int i = 0; i < height; i++) {
for (int j = 0; j < height - i - 1; j++) {
printf(" ");
}
for (int k = 0; k < 2 * i + 1; k++) {
printf("*");
}
printf("\n");
}
for (int i = 0; i < 3; i++) {
for (int j = 0; j < rows - 2; j++) {
printf(" ");
}
for (int k = 0; k < 5; k++) {
printf("*");
}
printf("\n");
}
return 0;
}
```
方法二:使用Sierpinski三角形
```c
include include define PI 3.14159265359 float sdCircle(float px, float py, float r) { float dx = px - sx, dy = py - sy; return sqrtf(dx * dx + dy * dy) - r; } float opUnion(float d1, float d2) { return d1 + d2 - sqrtf(d1 * d1 + d2 * d2); } int main(int argc, char* argv[]) { int n = argc > 1 ? atoi(argv) : 4; for (int j = 1; j <= n; j++) { int size = 200 / (j + 1); for (int i = 0; i < size; i++) { float x = size / 2 + i * (size - 1); float y = size / 2 - j * size; float d = sdCircle(x, y, size / 2); float nx = x + d * cos(PI / 6); float ny = y + d * sin(PI / 6); float nx1 = x - d * cos(PI / 6); float ny1 = y - d * sin(PI / 6); float d1 = sdCircle(nx, ny, size / 2); float d2 = sdCircle(nx1, ny1, size / 2); float area = opUnion(d, d1) + opUnion(d, d2) - d * d; printf("%f\n", area); } } return 0; } ``` 2. 使用Python绘制圣诞树 方法一:使用pygame库