Распечатать очередь из тех чисел, после которых не стоит заданное число - C (СИ)
Формулировка задачи:
Помогите пожалуйста, работы на 2 минуты.
Есть очередь из целых чисел, нужно распечатать очередь из тех, после которых не стоит заданное число.
Вот объявление списка:
Вот вызов функции печати (е - то самое число):
Вот сама функция:
Вот ее нужно переделать под это условие, чтобы возвращались только те, у которых
или
(вот именно в этом не разбираюсь).
Спасибо заранее!
© Stilet
Но печатает не все.
Листинг программы
- typedef struct node_t
- {
- int value;
- struct node_t* next;
- } TNode;
- typedef struct list_t
- {
- TNode* head;
- TNode* tail;
- } TList;
Листинг программы
- while (!IsEmpty(&list))
- {
- printf("%d ", Pop(&list, e));
- }
Листинг программы
- int Pop(TList* list, int e)
- {
- TNode* node = list->head;
- list->head = node->next;
- if (list->head == NULL)
- {
- list->tail = NULL;
- }
- int value = node->value;
- free(node);
- return value;
- }
Листинг программы
- list->head->next->value != e
Листинг программы
- node->next->value != е
Вариант:
Листинг программы
- void write(int n){
- TNode *i=list->head;
- for(;i;i=i->next)
- if(i->next && i->next->value!=n) {printf("%5d",i->value);i=i->next;}
- }
Решение задачи: «Распечатать очередь из тех чисел, после которых не стоит заданное число»
textual
Листинг программы
- void write(int n){
- TNode* i;
- for (i = list->head; i; i = i->next) {
- if (!(i->next && (i->next->value == n))) {
- printf("%5d", i->value);
- }
- }
- }
Объяснение кода листинга программы
В данном коде представлена функция под названием write
, которая принимает целочисленный аргумент n
. Функция обращается к связанному списку (очереди) и перебирает его элементы. Если текущий элемент не последний в списке и следующий элемент в списке имеет значение n
, то текущий элемент не печатается. В противном случае, значение текущего элемента выводится на экран с помощью функции printf
. Значение n
используется как разделитель между элементами списка.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д