网站首页 网站地图
网站首页 > 娱乐人生 > 编程画出五角星c语言怎么写

编程画出五角星c语言怎么写

时间:2026-03-20 22:53:39

在C语言中,可以使用嵌套循环和字符打印来绘制五角星。以下是几种不同的方法:

方法一:基本循环

```c

include

int main() {

int size = 5; // 五角星的大小

int i, j;

for (i = 1; i <= size; i++) {

for (j = 1; j <= size - i; j++) {

printf(" ");

}

for (j = 1; j <= 2 * i - 1; j++) {

printf("*");

}

printf("\n");

}

for (i = size - 1; i >= 1; i--) {

for (j = 1; j <= size - i; j++) {

printf(" ");

}

for (j = 1; j <= 2 * i - 1; j++) {

printf("*");

}

printf("\n");

}

return 0;

}

```

方法二:使用函数

```c

include

void drawStar(int size) {

int i, j;

for (i = 0; i < size; i++) {

for (j = 0; j < size - i - 1; j++) {

printf(" ");

}

for (j = 0; j < 2 * i + 1; j++) {

printf("*");

}

printf("\n");

}

for (i = size - 1; i >= 0; i--) {

for (j = 0; j < size - i - 1; j++) {

printf(" ");

}

for (j = 0; j < 2 * i + 1; j++) {

printf("*");

}

printf("\n");

}

}

int main() {

int size;

printf("请输入五角星的大小: ");

scanf("%d", &size);

drawStar(size);

return 0;

}

```

方法三:数学方法

```c

include

include

void draw_star(int scale) {

int i, end = rint(scale * sin(M_PI / 5));

for (i = 0; i <= end; ++i) {

int y1 = rint(scale * tan(M_PI / 5) * i);

int y2 = rint(scale * tan(M_PI / 5) * (i + 1));

for (int j = 0; j < scale - y1; j++) {

printf(" ");

}

for (int j = 0; j < 2 * i + 1; j++) {

printf("*");

}

printf("\n");

}

for (i = end - 1; i >= 0; i--) {

int y1 = rint(scale * tan(M_PI / 5) * i);

int y2 = rint(scale * tan(M_PI / 5) * (i + 1));

for (int j = 0; j < scale - y2; j++) {

printf(" ");

}

for (int j = 0; j < 2 * i + 1; j++) {

printf("*");

}

printf("\n");

}

}

int main() {

int scale;

printf("请输入五角星的大小: ");

scanf("%d", &scale);

draw_star(scale);

return 0;

}

```

这些代码示例展示了如何在C语言中绘制五角星。你可以根据需要调整五角星的大小和样式。