Печать связанного списка

По какой-то причине я не могу распечатать весь связанный список. Где я могу ошибаться? Пожалуйста помоги.Заранее спасибо.

Основная структура списка.

struct node
{
    int num;
    struct node *next;
};

typedef struct node *list;

Основная функция.

int main()
{
    int i, j, k, l;
    list head = NULL, start = NULL, temp, p;

    printf("Enter the number of nodes in the list: ");
    scanf("%d", &k);

Формирование связанного списка.

    for(i=0;i<k;i++)
    {
        if (i==0)
        {
            start = (list) malloc(sizeof(struct node));
            start->num = i;
            head = start;
            head->next = NULL;
        }
        else
        {   
            temp = (list) malloc(sizeof(struct node));
            temp->num = i;
            head->next = temp;
            head->next = NULL;
        }
    }   

Печать связанного списка.

    p = start;
    while(p != NULL)
    {
        printf("%d", p->num);
        p = p->next;
    }
    return 0;
}
0
задан Karan Kalra 19 August 2012 в 11:07
поделиться