用c语言表示上述题目
时间: 2024-11-10 18:25:48 浏览: 10
在 C 语言中,你可以使用嵌套循环来构造一个由给定字符形成的菱形。这里是一个简单的示例,假设输入的字符是 `'*'`:
```c
#include <stdio.h>
void print_diamond(char ch, int n) {
// 上半部分
for (int i = 0; i <= n; i++) {
// 每一行打印的 '*' 的数量
int spaces = n - i;
int stars = 2 * i + 1;
// 打印空格
printf("%*s", spaces, "");
// 打印星星
printf("%c", ch);
for (int j = 1; j < stars; j++)
printf("*");
printf("\n");
}
// 下半部分
for (int i = n - 1; i >= 0; i--) {
int spaces = n - i;
int stars = 2 * i + 1;
printf("%*s", spaces, "");
printf("%c", ch);
// 从中心向两边递减星星数量
for (int j = stars / 2; j > 0; j--)
printf("*");
printf("\n");
}
}
int main() {
char ch = '*';
int n = 5;
print_diamond(ch, n);
return 0;
}
```
在这个程序中,`print_diamond` 函数接受一个字符和一个数字作为参数,分别代表菱形的核心字符和菱形的大小。`main` 函数调用这个函数并传入所需的值。
阅读全文