任意の正の数を入力してその高さの二等辺三角形を、さらにその二等辺三角形を入力した数まで積み上げてできる二等辺三角形を作成せよ。
という問題で、二等辺三角形単体であれば問題ないのですが積み上げとなると空白部分が上手く作成できません。どのようにやればよろしいでしょうか?
#include <stdio.h>
int main(void)
{
static char a[] = "*************************************************";
int x;
while (printf("x = "), scanf("%d", &x) == 1) {
for (int s = x*x, t = x*2, i = 0; i < x; i++)
for (int j = 1; j < t; j += 2) {
printf("%*.*s", --s + j, j, a);
for (int k = i; --k >= 0; ) printf("%*.*s", t, j, a);
putchar('\n');
}
}
}