Заполнение списка данными - C (СИ)

Формулировка задачи:

Помогите пожалуйста, нужен кусок кода который будет заполнять список данными на языке Си

Код к задаче: «Заполнение списка данными - C (СИ)»

textual
#include <stdio.h>
#include <stdlib.h>
#define N 5
 
typedef struct List
{
    int data;
    struct List *next;
} List;
 
typedef struct Mylist
{
    List *root, *carr;
} Mylist;
 
Mylist *InitMylist( void )
{
    Mylist *u=(Mylist*)malloc(sizeof(Mylist));
    u->root = (List*)malloc(sizeof(List));
    u->carr = u->root;
    if(u->root==NULL)return NULL;
    u->root->next=NULL;
    return u;
}
 
void AddLast_Mylist(Mylist *u, int a)
{
    u->carr->data=a;
    u->carr->next=(List*)malloc(sizeof(List));
    u->carr=u->carr->next;
    u->carr->next=NULL;
}
 
void Delete_Mylist(Mylist* u)
{
    List* uk;
    while(u->root!=NULL)
    {
        uk=u->root;
        u->root=u->root->next;
        free(uk);
    }
    free(u);
}
 
void Print_Mylist(Mylist * u)
{
    List* uk=u->root;
    while(uk->next!=NULL)
    {
        printf("%d\n", uk->data);
        uk=uk->next;
    }
}
 
 
int main(void)
{
    Mylist *sp=InitMylist();
    int d;
    char x;
 
    for(int i=1; i<=N; ++i)
    {
        printf("Vvedite chisla v spisok: ");
        scanf("%d", &d);
        AddLast_Mylist(sp, d);
        printf("Prodolzhit? y/n: "); 
        while(getchar()!='\n');
        scanf("%c", &x);
        if(x=='n')break;
    }
 Print_Mylist(sp);
 
Delete_Mylist(sp);
 
    sp=NULL;
 
    return 0;
}
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

6   голосов, оценка 4.000 из 5


СДЕЛАЙТЕ РЕПОСТ