怎么用C语音打这玩意儿

img


怎么用C语音打这个东西,要求只能用循环,函数,数组都没学。头都秃了已经。

供参考:

#include<stdio.h>
int main()
{
    char c, ch = ' ';
    int  j, k, n = 5;
    while (scanf(" %c", &c) == 1 && c != '@') {
        scanf("%d", &n);
        for (k = 0; k < n; k++)
        {
            for (j = 1; j <= n - k; j++)
                printf(" ");
            for (j = 1; j <= 2 * k + 1; j++)
                printf("%c", (j == 1 || j == 2 * k + 1 || k == n - 1) ? c : ch);
            printf("\n");
        }
    }
    return 0;
}

利用for循环,主要是计算好行和对应的打印字符数量和位置就可以了