永发信息网

用for编写:输入正整数n,输出n行n列空心四边形图案。

答案:3  悬赏:20  手机版
解决时间 2021-04-25 01:01
  • 提问者网友:原来太熟悉了会陌生
  • 2021-04-24 01:14
#include<stdio.h>
main()
{
int a,i,j;
scanf("%d",&a);
for( i=0;i<a;i++)
printf("*");
printf("\n");
for(i=0;i<a-2;i++)
{
printf("*");
for(j=0;j<a-2;j++)
printf(" ");
printf("*");
printf("\n");
}
for(i=0;i<a;i++) printf("*");
printf("\n");
} 这是百度上找的,绕来绕去看不懂,哪位高手能简化下,或帮忙理解下……%>_<%
最佳答案
  • 五星知识达人网友:英雄的欲望
  • 2021-04-24 02:20

呵呵,怎么想也想不出,比这个程序再直观的了,帮你加些注释吧


#include<stdio.h>
main()
{


----------------------------------------------
int a,i,j; //录入字符个数a
scanf("%d",&a);


----------------------------------------------
for( i=0;i<a;i++) //打印第一行a个‘*’
printf("*");
printf("\n");


------------------------------------------------------------------
for(i=0;i<a-2;i++)
{
printf("*"); //打印中间a-2行最左边的'*'


for(j=0;j<a-2;j++) //打印中间a-2行,第一行中的n-2个空白符
printf(" ");


printf("*"); //打印中间a-2行最右边的'*'

printf("\n");
}


------------------------------------------------------------------------
for(i=0;i<a;i++) printf("*"); //打印最后一行a个‘*’
printf("\n");
}

全部回答
  • 1楼网友:纵马山川剑自提
  • 2021-04-24 04:08

#include<stdio.h> main() {int n; //定义变量n int i; //定义行变量 int j; //定义列变量

printf("请输入正整数:"); //提示输入参数n scanf("%d",&n); //从键盘读入n的取值

for(j=0;j<n;j++) printf("*"); //输出第一行的"*" printf("\n"); //换行 for(i=1;i<n-1;i++) //执行循环体输出1~n-1行 { printf("*"); //输出第i行第一列的"*" for(j=1;j<n-1;j++) printf(" "); //输出 第i行第j列 到 第i行第j列 的空格

printf("*"); //输出第i行第最后一列的"*"

printf("\n"); //换行 }

for(j=0;j<n;j++) printf("*"); //输出第最后一行的"*"

printf("\n"); //换行 }

  • 2楼网友:行路难
  • 2021-04-24 03:27
int a,i,j; scanf("%d",&a);//输入行数(列数)a for( i=0;i<a;i++) printf("*");//打印第一行* printf("\n");换下一行 for(i=0;i<a-2;i++) { printf("*");//打印第一列的* for(j=0;j<a-2;j++) printf(" "); printf("*");//打印第a列的* printf("\n");//换行 } for(i=0;i<a;i++) printf("*");//打印最后一行* printf("\n");
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯