使用C语言可以通过嵌套循环来输出空心菱形。以下是一个示例代码:
#include <stdio.h>
int main() {
int n, i, j, space;
// 输入菱形的大小
printf("请输入菱形的大小:");
scanf("%d", &n);
// 输出上半部分
for (i = 1; i <= n; i++) {
// 输出空格
for (space = 1; space <= n - i; space++) {
printf(" ");
}
// 输出星号
printf("*");
for (j = 2; j < 2 * i - 1; j++) {
printf(" ");
}
if (i != 1) {
printf("*");
}
// 换行
printf("\n");
}
// 输出下半部分
for (i = n - 1; i >= 1; i--) {
// 输出空格
for (space = 1; space <= n - i; space++) {
printf(" ");
}
// 输出星号
printf("*");
for (j = 2; j < 2 * i - 1; j++) {
printf(" ");
}
if (i != 1) {
printf("*");
}
// 换行
printf("\n");
}
return 0;
}
代码中的嵌套循环分为两部分,分别用于输出菱形的上半部分和下半部分。在每一行中,先输出一定数量的空格,然后输出星号,最后换行。确保输入的大小为奇数才能得到完整的菱形。