0 / 0 / 0
Регистрация: 26.09.2021
Сообщений: 8
1

Разместить в обратном порядке все элементы списка между первым и последним вхождением заданного элемента

26.09.2021, 15:31. Показов 4363. Ответов 1

Author24 — интернет-сервис помощи студентам
Программа, которая создает список. В программе предусмотреть размещение в обратном порядке всех элементов между первым и последним вхождением заданного элемента Е, в противном случае список оставить без изменений.

Вот то, что вышло:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <stdio.h> 
#include <stdlib.h>
 
int main()
{
    struct list
 
    {
    int data;
    struct list *next;
 
    };
 
    int n,i,E;
 
    printf ("Input N: ");
    scanf("%d",&n);
    scanf("%d",&E);
    struct list *plist,*head;
    plist=malloc(sizeof(struct list));
    head=plist;             // створення списка
    i=1;
    do
 
    {
       scanf("%d",&plist->data);
       plist->next=malloc(sizeof(struct list));
       plist=plist->next;
 
    }
    while (++i<n);
    scanf("%d",&plist->data);
    plist->next=0;
    plist=head;        // Виведення елементів списку
    while (plist!=0)
    {
       printf("%d ",plist->data);
       plist=plist->next;
 
    }
 
    plist=head;
    if (plist==E)
       while (plist->next==E)
       {
            if (plist->next->data==E)
            {
                   plist->next=plist->next->next;
            }
            else plist=plist->next;
       }
printf("\n");
 plist=head;     // Виведення елементів списку
   if (plist==E)
       do
       {
          printf("%d ",plist->data);
          plist=plist->next;
       }
 
      while (plist==E);
    printf("\n");
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.09.2021, 15:31
Ответы с готовыми решениями:

Динамические структуры данных. Переставить в обратном порядке все элементы между первым и последним вхождением элемента Е
дан массив целых чисел. разместить все элементы этого массива в двунаправленный список. переставить...

В списке переставить в обратном порядке элементы между первым и последним вхождением элемента
Пусть L обозначает кольцевой двунаправленный список с заглавным звеном. Описать функцию или...

В списке переставить в обратном порядке элементы между первым и последним вхождением элемента
Написать процедуру, для того, чтобы переставить в обратном порядке все элементы в списке между...

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

1
0 / 0 / 0
Регистрация: 26.09.2021
Сообщений: 8
26.09.2021, 15:36  [ТС] 2
Программа, которая создает список. В программе предусмотреть размещение в обратном порядке всех элементов между первым и
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
    struct list
 
    {
    int data;
    struct list *next;
 
    };
 
    int n,i,E;
 
    printf ("Input N: ");
    scanf("%d",&n);
    scanf("%d",&E);
    struct list *plist,*head;
    plist=malloc(sizeof(struct list));
    head=plist;             // створення списка
    i=1;
    do
 
    {
       scanf("%d",&plist->data);
       plist->next=malloc(sizeof(struct list));
       plist=plist->next;
 
    }
    while (++i<n);
    scanf("%d",&plist->data);
    plist->next=0;
    plist=head;        // Виведення елементів списку
    while (plist!=0)
    {
       printf("%d ",plist->data);
       plist=plist->next;
 
    }
 
    plist=head;
    if (plist==E)
       while (plist->next==E)
       {
            if (plist->next->data==E)
            {
                   plist->next=plist->next->next;
            }
            else plist=plist->next;
       }
printf("\n");
 plist=head;     // Виведення елементів списку
   if (plist==E)
       do
       {
          printf("%d ",plist->data);
          plist=plist->next;
       }
 
      while (plist==E);
    printf("\n");
}
0
26.09.2021, 15:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.09.2021, 15:36
Помогаю со студенческими работами здесь

Переставить в обратном порядке все символы между первым и последним вхождением заданного символа в исходной строке
Ребят, нужно написать программу на ассемблере. Задание:переставить у обратному порядке все символы...

Переставить в обратном порядке символы между первым и последним вхождением заданного символа
переставить в обратном порядке символы между первым и последним вхождением заданного символа в...

Удалить из строки все символы, расположенные между первым и последним вхождением заданного символа
Дана строка S и символ C. Удалить из нее все символы, расположенные между первым и последним...

Удалить из строки все символы, расположенные между первым и последним вхождением заданного символа
используя стандартные процедуры и функции для работы со строками. Дана строка S и символ C....

Удалить все элементы между первым и последним появлением заданного элемента Strawberry Prolog
В списке S1,S2,S3,…,SN найти первое и последнее вхождение заданного элемента и удалить все символы...

Вывести числа между первым и последним односвязного списка в обратном порядке
Добрый вечер! Есть код который выводит односвязный список в обратном порядке, а нужно перевернуть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru