输入由N行星号组成的菱形,每个星号后跟一个空格C语言编程
时间: 2024-10-14 09:17:26 浏览: 4
在C语言中,如果你想创建一个由星号(*)组成的菱形图案,通常会使用嵌套循环。菱形形状的关键在于控制每行的星号数量以及递增或递减的数量。以下是一个简单的例子,它会打印一个由N行星号(*)组成的菱形:
```c
#include <stdio.h>
#define N 5
void printDiamond(int n) {
int space = n * 2 - 1; // 计算每行星号前后的空格数
for (int i = 0; i <= n; ++i) {
for (int j = 0; j < space; ++j)
printf(" ");
// 上半部分:从左向右增加星号
for (int k = 0; k <= i; ++k)
printf("* ");
printf("\n"); // 每行结束换行
// 下半部分:从右向左减少星号
if (i != n) {
space -= 2;
for (int k = i; k >= 1; --k)
printf("* ");
}
}
}
int main() {
int n = N;
printDiamond(n);
return 0;
}
```
在这个程序中,`printDiamond`函数接收一个参数N,表示菱形的大小。通过两个嵌套的for循环,首先打印出足够的空格,然后在星号上添加递增的模式,最后再反转这一模式,使得下半部分变成反向的菱形。