思路:
1,两行两列打印* :第一行和最后一行,第一列和最后一列。
2,其他地方打印空格。
代码如下:
#include<stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;while (scanf("%d", &n) != EOF)
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
if (i == 0 || i == n - 1)
{
printf("* ");
}
else if (j == 0 || j == n - 1)
{
printf("* ");
}
else {
printf(" ");
}}
printf("\n");
}
return 0;
}
运行结果:
错误示范:
运行结果:
原因:printf少打印一个空格。