[C] Przechowywanie tablicy char w liście

Witam, mam mały problem z tym kodem:

typedef struct przedmiot {
   struct przedmiot *next;
   unsigned long cena;
   int wystawa;
   char nazwa[10];
 } el_listy;

el_listy *first;

 void wypisz_liste(el_listy *lista)
 {
     int counter=0;
   el_listy *wsk=lista;
   while( wsk != NULL )
     {
         counter++;
         printf("\n%d.Nazwa: %s", counter, wsk-nazwa);
     printf ("\n%d\n", wsk-cena);
     wsk = wsk-next;
     }
     getchar();
 }


void dodaj_przedmiot (el_listy *lista)
{
    int cena;
    char nazwa[10]={'0'};
    int wystawa;
    char tempo[10];
    printf("\nPodaj nazwe przedmiotu:");
    scanf("%s", nazwa);
    printf("\nPodaj cene:");
    scanf("%d", cena);
    printf("\nNaa wystawe (1 true 0 false): ");
    scanf("%d", wystawa);
    el_listy *wsk, *nowy;
    wsk=lista;
    while(wsk-next!=NULL)
    {
        wsk=wsk-next;
    }
    nowy=(el_listy*) malloc(sizeof (el_listy));
    nowy-cena=cena;
    nowy-nazwa[10]=nazwa[10];
    nowy-wystawa=wystawa;
    tempo[10]=wsk-nazwa;
    nowy-next=NULL;
    wsk-next=nowy;

}

Funkcja dodaj_przedmiot ma problem z przepisaniem wartości ze zmiennej nazwa na wsk-nazwa. Czy widzi ktoś tutaj jakiś błąd? 

http://lmgtfy.com/?q=c+string+copy

Dzięki wielkie, działa :slight_smile: