c编程怎么输出钻石

时间:2025-01-23 04:06:09 游戏攻略

在C语言中,输出钻石形状可以通过两层嵌套循环实现。以下是一个示例代码,展示了如何输出一个给定大小的钻石:

```c

include

void printSpaces(int numSpaces) {

for (int i = 0; i < numSpaces; i++) {

printf(" ");

}

}

void printStars(int numStars) {

for (int i = 0; i < numStars; i++) {

printf("*");

}

}

void printDiamond(int size) {

if (size % 2 == 0) {

size++;

}

int midSize = size / 2;

for (int i = 0; i <= midSize; i++) {

int numSpaces = midSize - i;

int numStars = 2 * i + 1;

printSpaces(numSpaces);

printStars(numStars);

printf("\n");

}

for (int i = midSize - 1; i >= 0; i--) {

int numSpaces = midSize - i;

int numStars = 2 * i + 1;

printSpaces(numSpaces);

printStars(numStars);

printf("\n");

}

}

int main() {

int size;

printf("Enter diamond size: ");

scanf("%d", &size);

printDiamond(size);

return 0;

}

```

代码解释:

printSpaces函数:

用于打印指定数量的空格。

printStars函数:

用于打印指定数量的星号。

printDiamond函数:

用于打印钻石形状。首先检查`size`是否为偶数,如果是偶数则将其加1以确保钻石中心对称。然后计算中间位置`midSize`,接着分别打印上半部分和下半部分的钻石形状。

main函数:

从用户输入获取钻石的大小,并调用`printDiamond`函数输出钻石。

示例输出:

```

Enter diamond size: 5

*

*

*

*

*

*

*

*

*

```

通过调整`size`变量的值,可以输出不同大小的钻石。