内存:128  时间:1

题目描述


***********
*         *
* ******* *
* *     * *
* * *** * *
* * * * * *
* * *** * *
* *     * *
* ******* *
*         *
***********
观察这个图形,它是由一系列正方形的星号方框嵌套而成。
在上边的例子中,最外方框的边长为11。
本题的任务就是从标准输入获得一个整数n(1<n<100)
程序则生成嵌套着的回字型星号方框。其最外层方框的边长为n

输入

例如:
输入:
5

输出

程序输出:
*****
*   *
* * *
*   *
*****

样例输入

10

样例输出

**********
* *
* ****** *
* * * *
* * ** * *
* * ** * *
* * * *
* ****** *
* *
**********

提示

代码如下

#include<stdio.h>
#include<string.h>
void qz(char a[][101],int n,int first)
{
if(first>n)return;
int i,j;
for(i=first;i<=n;i++)
{
a[first][i]='*';
a[n][i]='*';
}
for(j=first;j<=n;j++)
{
a[j][first]='*';
a[j][n]='*';
}
qz(a,n-2,first+2);
}
int main()
{
int n,i,j;
char a[101][101];
scanf("%d",&n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
a[i][j]=' ';
qz(a,n,1);
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%c",a[i][j]);
printf("\n");
}
return 0;
}

代码来源于互联网,仅供参考!