Создать список из случайных целых чисел и удалить из него отрицательные элементы - C (СИ)

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

Всем привет! Ребята помогите! Нужна ваша помощь! "Написать программу по созданию, просмотру, добавлению и решению поставленной задачи для однонаправленного линейного списка (стек и/или очередь). Создать список из случайных положительных и отрицательных целых чисел (от –10 до 10) и удалить из него отрицательные элементы." Если это возможно, то с минимальными комментариями! Спасайте, сессия горит!

Код к задаче: «Создать список из случайных целых чисел и удалить из него отрицательные элементы - C (СИ)»

textual
struct  Node
{   int data;
    Node *next;
};
 
struct Stack
{   Node *begin;
};
 
Stack *CreateStack()
{   Stack *s = new Stack;
    s->begin= NULL;
    return s;
}
 
bool Empty(Stack *s)
{   if (s->begin == NULL)
        return true;
    return false;
}
 
void PushBack(Stack *s, int data)
{   Node *tmp = new Node;
    tmp->data = data;
    tmp->next = NULL;
 
    if (Empty (s)) 
    {   s->begin = tmp;
        return;
    }
    
    Node *n1 = s->begin;
    Node *n2 = s->begin->next;
    
    while (n2 != NULL)
    {   n1 = n1->next;
        n2 = n2->next;
    }
 
    n1->next = tmp;
}
 
void PopFront(Stack *s)
{   if (Empty (s))
        return;
    
    Node *tmp = s->begin;
    s->begin = s->begin->next;
    delete tmp;
}
 
int Top(Stack *s)
{   return s->begin->data;
}
 
void Print(Stack *s)
{   Node *tmp = s->begin;
    while (tmp != NULL) 
    {   printf("%5d", tmp->data);
        tmp = tmp->next;
    }
    printf("\n");
}
 
void Clear(Stack *s)
{   Node *tmp = s->begin;
    while (s->begin != NULL)
        PopFront(s);
}
Эта работа вам не подошла?

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

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


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