cfree输出星星图案

输入正整数N(1≤N≤50),输出星号组成的菱形图案(中轴线长度为2N-1) *

img

输入3时,图形是这样的,求大神解题方案。

代码如下

#include <stdio.h>           
int main( )    
{    
    int i,j;  //n代表上三角行数   
    int n;

    scanf("%d",&n);

    

    //先输出上三角    
    for(i=1;i<=n;++i) //输出n行    
    {    
        //输出第i行    
        for(j=1; j<=n-i; ++j) //输出n-i个空格    
            printf(" ");    
        for(j=1; j<=2*i-1; ++j) //输出2*i-1个星号    
            printf("*");    
        printf("\n");    
    }    
    //下面输出下三角    
    for(i=1;i<n;++i) //输出n-1行     
    {    
        //输出第i行    
        for(j=1; j<=i; ++j) //输出i个空格    
            printf(" ");    
        for(j=1; j<=2*(n-i)-1; ++j) //输出2*i-1个星号    
            printf("*");    
        printf("\n");    
    }    
    return 0;       
}