Форум программистов, компьютерный форум CyberForum.ru

Односвязный список - C++

Восстановить пароль Регистрация
 
AleX_73
0 / 0 / 0
Регистрация: 09.12.2011
Сообщений: 13
14.01.2013, 17:08     Односвязный список #1
Нужно удалить четные элементы, стоящие между максимальным и минимальным элементом. Помогите пожалуйста!

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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <stdlib.h>
 
struct List
{
    int num;
    List *next;
};
 
void printmenu(){
    printf("\nChoose action number: ");
    printf("\n1. Input");
    printf("\n3. Show all");
    printf("\n4. Exit\n");
}
 
List *Add(List *root)
{   
    List *tmp = new List;
    List *p;
    printf("\nSome incoming data...\n");
    printf("Enter number ");
    scanf("%d",&(tmp -> num));
    tmp -> next = NULL;
    if(root == NULL)
    {
        return tmp;
 }
    else
    {
        p=root;
        while(p->next!=NULL)
        {
            p=p->next;
        }
        p->next = tmp;
        return root;
    }
}
 
void ShowAll(List *root)
{
     
    while(root)
    {
        printf("%d ;  ",root -> num);
        root = root -> next;
    }
}
 
 
int main()
{
    List *root = NULL,*tmp;
    char ch[10];
    int k;
    while(1)
    {
        printmenu();
        scanf("%s",ch);
        k=atoi(ch);           
        switch(k)
        {
            case 1:
            {     
                system("cls");
                int a,b = 0;
                printf("\nHow much element do you want add? ");
                scanf("%d",&a);
                while(b < a)
                {  
                    root = Add(root); b++; 
                } 
                printf("All number added. Press any key to continue");
                _getch();
                system("cls");
                break;
            };  
                                   
            case 3: 
            system("cls"); 
            ShowAll(root); 
            printf("\n"); 
            break;     
            case 4: exit(0);
            default: 
            printf("\nIncorrect input. Press any key to continue\n");
            _getch(); 
            system("cls");
        }
                         
     }
     while(tmp=root)
     {
        root=root->next;
        delete tmp;
     }                                
     return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2013, 17:08     Односвязный список
Посмотрите здесь:

Односвязный список C++
Односвязный список C++
C++ Односвязный список
односвязный список C++
односвязный список C++
Односвязный список C++
Односвязный список C++
C++ Односвязный список

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 16:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru