这个怎么才能输出多个*符号啊

img


怎么才能让它输出想要的个数的*啊
还有那个怎么才能居中对齐?

谢谢

循环输出星号,想输出几个就循环几次
中间对齐,其实不过就是前面加几个空格的问题,也一样,循环输出空格

一是每行先输出指定的空格,然后再输出2*n-1个 * 号

int main()
{
    int T;
    scanf("%d",&T);
    for(int i=0;i<T;i++)
    {
        int n;
        scanf("%d",&n);
        for(int j=0;j<n;j++)
        {
            for(int k=0;k<j;k++)
                printf(" ");
            for(int k=0;k<2*(n-j)-1;k++)
                printf("*");
            printf("\n");
        }
        printf("\n");
    }
}

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