Zrobiłeś to co większość początkujących, tzn przekombinowałeś - nie potrzebujesz do tego zadania tablic.
Jednym z wariantów tego zadania jest napisania programu drukującego trójkąt:
# n = 5
*
**
***
****
*****
Do wariantu, który przedstawiłem wystarczy dodać warunek aby uzyskać wariant z uzupełnieniem, aby nie psuć ci zabawy przedstawię gotowe rozwiązanie (w C) wersji bez dopełnienia, a Ty postaraj się na tej podstawie wykonać swoje zadanie:
/* Kompilacja i przyklad uruchomienia:
$ gcc nopadding.c -std=c89 -o nopadding
$ ./nopadding
7
*
**
***
****
*****
******
*******
*/
#include <stdio.h>
int main(void)
{
/* wczytanie liczby wierszy */
int n;
scanf("%d", &n);
/* drukowanie trojkata */
int i, j;
for(i=1; i<=n; ++i)
{
for(j=1; j<=i; ++j)
{
/* TODO miejsce gdzie trzeba dodac warunek
dla wersji z dopelnieniem */
printf("*");
}
printf("\n");
}
return 0;
}