以下是一个打印4阶空心菱形的C语言程序:
```
#include
int main() {
int n = 4; // 菱形的阶数
int i, j, k;
// 打印上半部分
for (i = 1; i <= n; i++) {
// 打印空格
for (j = 1; j <= n - i; j++) {
printf(" ");
}
// 打印星号或空格
for (k = 1; k <= 2 * i - 1; k++) {
if (k == 1 || k == 2 * i - 1) {
printf("*");
} else {
printf(" ");
}
}
printf("\n");
}
// 打印下半部分
for (i = n - 1; i >= 1; i--) {
// 打印空格
for (j = 1; j <= n - i; j++) {
printf(" ");
}
// 打印星号或空格
for (k = 1; k <= 2 * i - 1; k++) {
if (k == 1 || k == 2 * i - 1) {
printf("*");
} else {
printf(" ");
}
}
printf("\n");
}
return 0;
}
```
该程序与前面的程序类似,不同之处在于菱形的阶数被设置为4,而不是从用户输入中获取。