Sono molto confuso... non ci sto capendo piu' niente..

Per es. facendo questo, perchè non viene creata la matrice, ma vngono disposti nella stessa riga?

codice:
#include<stdio.h>
main()
{
    int matrice[10][10];
    int x, y;
       /* riempie la matrice */
    for(x=0;x<10;x++)
    {
        for(y=0;y<10;y++)
        {
            matrice[x][y]='*'; /* assegna all'elemento x,y dell'array il valore x*y */
            printf("%s", matrice);
        }
     }


    system("pause");
}