星号菱形怎么写程序

时间:2025-01-26 05:17:56 单机游戏

```c

include

int main() {

int n;

printf("请输入菱形的行数: ");

scanf("%d", &n);

// 打印上半部分

for (int i = 1; i <= n / 2; i++) {

// 打印空格

for (int j = 1; j <= n / 2 - i; j++) {

printf(" ");

}

// 打印星号

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

printf("*");

}

printf("\n");

}

// 打印下半部分

for (int i = n / 2 - 1; i >= 1; i--) {

// 打印空格

for (int j = 1; j <= n / 2 - i; j++) {

printf(" ");

}

// 打印星号

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

printf("*");

}

printf("\n");

}

return 0;

}

```

代码解释:

输入行数 :程序首先提示用户输入菱形的行数 `n`。

打印上半部分

外层循环控制行数,从1到`n / 2`。

第一个内层循环打印空格,空格数量为`n / 2 - i`。

第二个内层循环打印星号,星号数量为`2 * i - 1`。

打印下半部分

外层循环控制行数,从`n / 2 - 1`到1。

第一个内层循环打印空格,空格数量为`n / 2 - i`。

第二个内层循环打印星号,星号数量为`2 * i - 1`。

这个程序通过两个嵌套的for循环分别控制行数和列数,打印出对称的星号菱形。你可以根据需要修改行数来调整菱形的大小。