#include <stdio.h>

int main() {
    char a = 0;
    scanf("%c", &a);
    for (int i = 1; i < 3; i++) {
        for (int j = 0; j < 3 - i; j++) {
            printf(" ");
        }
        for (int j = 0; j < 2 * i - 1; j++) {
            printf("%c", a);
        }
        printf("\n");
    }
    printf("%c%c%c%c%c\n",a,a,a,a,a);
    for (int i = 2; i >0; i--) {
        for (int j = 0; j < 3 - i; j++) {
            printf(" ");
        }
        for (int j = 0; j < 2 * i - 1; j++) {
            printf("%c", a);
        }
        printf("\n");
    }
    return 0;
}

模块化分块解决算法问题,但是中间这行不太灵活,学习中,有优化思路也欢迎指导