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

списки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поменять местами символы строки http://www.cyberforum.ru/cpp-beginners/thread127645.html
ребят...ткните где у меня ошибки... #include "stdafx.h" #include <string> #include "conio.h" #include <iostream> using namespace std; void main(void)
C++ использование рекурсии с массивами Ребят,помогите.Нужно описать рекурсивную функцию поиска максимального элемента в одномерном массиве...в рекурсии вообще не шарю...покажите дельный пример хотя,где используется рекурсивная функция...буду благодарен Добавлено через 2 часа 39 минут ^please^ http://www.cyberforum.ru/cpp-beginners/thread127642.html
C++ Функции в С++
Помогите пожалуйста решить задачки... 1. Используя функции сформировать двумерный массив и вывести его на печать. Выполнить обработку двумерного массива в соответствии с вариантом, используя функции, результат вывести на печать. В матрице Х(n,n) поменять местами элементы на главной и побочной диагоналях. Проверить, поменялось ли положение максимального элемента в каждой строке. 2. ...
C++ нужно решение
Помогите решить на с++. Я только начинаю изучать С ++, пока ещё плохо разбираюсь. Заранее спасибо. 1 Дан одномерный массив из 150 случайных целых чисел в диапазоне от 14 до 37 включительно. Вывести те числа, которые наиболее редко встречаются в массиве и количество их повторений. Подсчёт количества повторений для числа оформить в виде функции. 2 Дан массив действительных чисел A. Получить...
C++ KeyDown не работает http://www.cyberforum.ru/cpp-beginners/thread127605.html
Здравствуйте, я пишу программу судоку и сделал так что при нажатии на клеточку она выделяется после этого юзер нажимает клавишу с цифрой на клавиатуре и цифра ставится в клеточку. После этого я добавил кнопку и сообщение KEYDOWN перестало обрабатываться. P. S. диалог я создаю в ресурсах(пустой диалог без кнопок с именем DIALOG). P. P. S. Еще при вводе цифр в клетки одна из нижних клеток...
C++ МАССИВ СТРУКТУР. очень нужно Здравствуйте люди добрые! Помогите с задачкой по С :"Разработать подалгоритм удаления заданного по номеру элемента массива структурных данных, если значение определённого поля совпадает со значением одноименного поля в каком либо другом элементе массива. Вроде легкая но не могу сделать и все хотя даже понимаю что происходит! Заранее спасибо! подробнее

Показать сообщение отдельно
Nastas'ya
0 / 0 / 0
Регистрация: 27.03.2010
Сообщений: 5

списки - C++

10.05.2010, 19:22. Просмотров 296. Ответов 0
Метки (Все метки)

Помогите,пожалуйста, разобраться с работой двусвязного списка,если несложно, можите представить ввиде схемы. Заранее огромное спасибо.
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
struct student    {                         //определение структурного типа
             char *fio;
             int group;
             int ses[5];
           };
                   int j,i;
 void  infor(student car) //функция печати о студенте
 
 {   static int count=0;
      cout<<"\n"<<++count<<"."<<car.fio;
      cout<<","<<car.group;
          for(j=0;j<5;j++)
     { cout<<","<<car.ses[j];
          }
 }
 
 student  stud[]={
            {"Ivanova",8890,5,5,5,5,5},
            {"Ageeva",8899,4,4,4,4,4},
            {"Sidorova",8891,5,4,4,4,5},
            {"Belyaaeva",8889,5,4,4,4,3},
            } ;
 
struct record            { student infor;//тип для элементов списка
               record *prior;
               record *next;
             };
 
void main(void)
{ clrscr();
 
        record  *begin=NULL, //указатуль начала списка
        *last=NULL, //указатель на очередь записи
        *list;      //    указатель на элемент списка
 
int n=sizeof(stud)/sizeof(stud[0]);   //количество записей в списке
 
for(int i=0; i<n; i++)   //цикл обработки исходных записей в информации
  {
    last=new(record);//создать новую запись(элемент списка)
 
    (*last).infor.fio=stud[i].fio;
    (*last).infor.group=stud[i].group;
        for(j=0;j<5;j++){
                    last->infor.ses[j]=stud[i].ses[j];
                        }
       //включить запись в список
    if(begin==NULL)  // списка ещё нет
        {
            last->prior=NULL;
            begin=last;
            last->next=NULL;
        }
 
    else  //список уже сущуствует
           {
                list=begin;
                    //цикл просмотра списка,поиск места для новой записи
            while(list)
               {//вставить новую запись перед list
               if(strcmp(last->infor.fio,list->infor.fio)<0)
            {if(begin==list) //начало списка
                {last->prior=NULL;
                 begin=last;}
                 else //вставка между записями
                                 {list->prior->next=last;
                                  last->prior=list->prior;}
                                  list->prior=last;
                                  last->next=list;
                                  break;  //выйти из цикла просмотра списка
                                 }
                                   
                 if(list->next==NULL) //перейти к следущему элементу списка
                   {      // включить запись в конец списка
                       last->next=NULL;
                       last->prior=list;
                       list->next=last;
                       break;
                                           //выйти из цикла просмотра списка
                   }
                  list=list->next; //перейти к следующим элементам списка
                } //конец цикла просмотра списка(поиск места для новой)
        }   //включение записи выполнено
  }    //конец цикла обработки исходных данных
 
 list=begin; //печать в алфавитном порядке
 cout<<"\n";
   while(list)
     {
         infor(list->infor);
         list=list->next;
     }
  getchar();    
}
//---------------------------------------------------------------------------
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru