Mam polecenie, żeby zrobić tablice, w której pierwsze wartości wierszy podaje uzytkownik, a następne to ich wielokrotności. I problem jest taki, że jeśli są liczby dwu- lub więcej- cyfrowe, to nie ma odstępów między nimi, np. jak pierwsza kolumna w wierszu wynosi 3, to wiersz wyświetla się tak:
3 6 912151821
Jest jakiś sposób na zapobiegnięcie temu?
#include <stdio.h>
#include <stdlib.h>
int main()
{
long int a, b, c, d, e, f; //liczby, które wczytuje użytkownik
printf("Podaj poczatek pierwszego wiersza tablicy: ");
scanf("%ld",&a);
printf("Podaj poczatek drugiego wiersza tablicy: ");
scanf("%ld",&b);
printf("Podaj poczatek trzeciego wiersza tablicy: ");
scanf("%ld",&c);
printf("Podaj poczatek czwartego wiersza tablicy: ");
scanf("%ld",&d);
printf("Podaj poczatek piatego wiersza tablicy: ");
scanf("%ld",&e);
printf("Podaj poczatek szostego wiersza tablicy: ");
scanf("%ld",&f);
long int matrix[6][7] = { //tablica o 6 wierszach i 7 kolumnach
{a,a*2,a*3,a*4,a*5,a*6,a*7},
{b,b*2,b*3,b*4,b*5,b*6,b*7},
{c,c*2,c*3,c*4,c*5,c*6,c*7},
{d,d*2,d*3,d*4,d*5,d*6,d*7},
{e,e*2,e*3,e*4,e*5,e*6,e*7},
{f,f*2,f*3,f*4,f*5,f*6,f*7},
}; //ustalenie wartosci tablicy na podstawie wczytanych liczb
int i, j;
for (i = 0; i < 6; i++)
{
for (j = 0; j < 7; j++)
{
printf("%2d",matrix[i][j]);
}
printf ("\n");
}
return 0;
}