c语言打印菱形图案代码解析
时间: 2024-11-20 19:42:42 浏览: 9
在C语言中,打印菱形图案通常通过嵌套循环结合条件判断来实现。下面是一个基本的示例,这个代码会打印出一个由星(*)构成的向上对齐的小型菱形:
```c
#include <stdio.h>
void printDiamond(int n) {
int space = n - 1; // 空格的数量
for (int i = 0; i <= n; i++) {
// 打印空格
for (int j = 0; j < space; j++)
printf(" ");
// 打印上半部分的星
if (i <= n / 2)
for (int k = 0; k < 2 * i - 1; k++)
printf("*");
// 换行并调整空间
printf("\n");
space -= 2;
// 打印下半部分的星(如果菱形大小大于1)
if (i > n / 2) {
space += 2;
for (int k = 0; k < n - 2 * i + 1; k++)
printf("*");
for (int k = 0; k < 2 * i - 1; k++)
printf("*");
}
}
}
int main() {
int size = 5; // 菱形的大小
printDiamond(size);
return 0;
}
```
在这个代码里,`printDiamond`函数接受一个整数`n`作为参数,表示菱形的大小。外层循环控制行数,内层循环用于打印每个位置的星。对于上半部分,星的数量从1逐渐增加到最大值;对于下半部分,星的数量则减少回去。
阅读全文