这个数字金字塔c++字母编码

img

请问大家怎么设计 只会*这样的金字塔 这个数字金字塔着实有点困难了!

先上结果

img

img

如果看不懂的话可以私信我

int main()
{
    int i[30];      //空格 
    int j[20];      //数字 
    int num = 1;    //金字塔数组赋值变量 
    int count;      //输入要输出几行金字塔 
    int t = 0;      //最中间的数据是数组中的 t 位 
    int e = 0;      //每次输出到 e 位置 
    scanf("%d",&count);
    for(int k = 0; k < count; k++) //先将要输出的数据全部交给数组 
    {
        j[k] = (2 * num) - 1;
        num++;
    }
    while(count)                    //一共输出count行数据 
    {
        for(int i = 1; i < count; i++) //先打印占位空格,因为每个数中间空一格,所以占位空格要多打一个 
        {
            printf("    ");
        }
        for(; e < t; e++)             //输出前一半数据 
        {
            printf("%4d",j[e]);
        }
        for(; e >= 0; e--)             //输出后一半数据 
        {
            printf("%4d",j[e]);
        }
        count--;                         //打印行数减一; 
        t++;                             //打印数量加一 
        e = 0;
        printf("\n");
    }
    
    return 0;
}