题目描述
输入一个整数n,(1<=n<=20),输出一个空心菱形,其中每个边由n个’*'组成。
输入
输入包含一个整数,n(1<=n<=20)
输出
输出一个空心菱形,每个边由n个’*'组成
#include <stdio.h>
/*输入一个整数n,(1<=n<=20),输出一个空心菱形,其中每个边由n个'*'组成。*/
int main()
{
int n,i,j;
scanf("%d",&n);
if(n<1||n>20) return -1;
for(i=1;i<=(2*n-1);i++) //第i行
{
for(j=1;j<=(2*n-1);j++) //第j个
{
//前n行,从第一行开始
if(i<=n)
{
if((j==(n-i+1))||(j==(n+i-1))) printf("*");
else printf(" ");
}
//第n+1行--最后一行
else
{
if(j==(i-n+1)||j==(3*n-i-1)) printf("*");
else printf(" ");
}
}
printf("\n");
}
return 0;
}