需要帮助,并且只用if,while ,do while实现这个题目

img

代码如下,如有帮助,请帮忙采纳一下,谢谢。

img

代码:

#include <stdio.h>
int main()
{
    int i,j,n;
    scanf("%d",&n); 
    //3*n-2
    //n + n-1 = 2*n-1
    for (i=0;i<2*n-1;i++)
    {
        if(i==0 || i== 2*n-2)
        {
            for(j=0;j<n-1;j++)
                printf(" ");
            for(j=0;j<n;j++)
                printf("*");
        }else
        {
            if(i<n)
            {
                for(j=0;j<3*n-2;j++)
                {
                    if(j == n-1-i || j == 2*n-2+i )
                        printf("*");
                    else
                        printf(" ");
                }
            }else
            {
                for (j=0;j<3*n-2;j++)
                {
                    if(j == i-n+1 || j== 4*n-i-4)
                        printf("*");
                    else
                        printf(" ");
                }
            }
        }
        printf("\n");
    }
    return 0;
}