使用输出语句,用 * 打印一个正方形
注意的内容:必须要使用 "\n" 来进行换行的操作
法一:
直接用多个printf语句进行输出
#include<stdio.h>
int main()
{
printf("* * * * *\n");
printf("* * * * *\n");
printf("* * * * *\n");
printf("* * * * *\n");
printf("* * * * *\n");
return 0;
}
或者只使用一个printf进行输出即可
#include<stdio.h>
int main()
{
printf("* * * * *\n"
"* * * * *\n"
"* * * * *\n"
"* * * * *\n"
"* * * * *\n");
return 0;
}
法二
利用 循环语句进行
只要输入了行和列,就可以打印出一个正方形
#include<stdio.h>
int main()
{
int n, i, j;
printf("请输入正方形的边长:\n");
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
for (j = 1; j <= n; j++)
{
printf("* ");
}
printf("\n");
}
return 0;
}
这个时候我们发现,所打印出的正方形都是实心,那么能够打印出来空心的正方形吗?
关键思路:
1.如果要求空心的正方形,那么第一行和第n行就要是“* ”,第一列和最后一列也是“* ”,剩余的部分就是空白“ ”;
2.所以要用判断语句来操作,判断的条件就是我们第一条所说的
3.最后不要忘了换行“\n”
4.当然,也可以直接使用printf语句直接打印,不过此方法比较耗时多,一般有规律可循的,我们可以尝试使用循环语句,如果有条件限制,适当使用判断语句
# include<stdio.h>
int main()
{
int n, i, j;
printf("请输入正方形的边长:\n");
scanf("%d",&n);
for(i = 1;i<=n;i++)
{
for(j = 1;j<=n;j++)
{
if(i == 1||i == n)
{
printf("* ");
}
else
{
if(j == 1 || j == n)
{
printf("* ");
}
else
{
printf(" ");
}
}
}
printf("\n");
}
return 0;
}