c语言给定一个整数n,输出一个由字符“*”组成的边长为n的中空的正方形。
时间: 2024-10-23 14:11:59 浏览: 48
在C语言中,你可以使用嵌套循环来创建一个边长为n的中空正方形,其中内部的“*”字符比外部的少一行和一列。以下是一个简单的示例:
```c
#include <stdio.h>
void print_squares(int n) {
// 首先打印上边界和下边界
for (int i = 0; i < n; i++) {
printf("*");
}
printf("\n");
// 打印左右两侧的星号
for (int j = 1; j < n - 1; j++) {
printf("* ");
}
printf("*\n");
// 再次打印上边界和下边界
for (int i = 0; i < n; i++) {
printf("*");
}
// 中间的星号按照内层循环输出,每行减少一个星号
for (int i = 1; i <= n - 2; i++) {
for (int j = 1; j <= n - 2; j++) {
printf(" ");
}
printf("* ");
for (int j = 1; j <= n - 2; j++) {
printf("*");
}
printf("\n");
}
// 最后打印下边界
for (int i = 0; i < n; i++) {
printf("*");
}
printf("\n");
}
int main() {
int n = 5; // 将这里替换为你想要的整数值
print_squares(n);
return 0;
}
```
在这个程序中,`print_squares`函数接收整数n作为输入,并按需输出相应的正方形。运行这个程序,会看到指定大小的中空正方形。
阅读全文