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

двунаправленный список. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывод с list в файл http://www.cyberforum.ru/cpp-beginners/thread307721.html
Задание вот такое вот: Дан исходный текстовый файл с текстом программы на языке С++. Сформировать на его основе выходной текстовый файл, поместив в него отсортированные по алфавиту имена переменных целого типа. Вот код: // string13.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <stdio.h>
C++ массивы(min на второстепенной диагонали)решить! Подскажите, пожалуйста, что надо поменять чтобы все работало? и что надо ввести вместо ??? Даны целые массивы a, b. Найти минимальный элемент среди элементов, расположенный на второстепенной диагонали #include<iostream.h> #define I 5 #define J 5 void vvodmas(int,char); int poisk(int); http://www.cyberforum.ru/cpp-beginners/thread307711.html
Список C++
Дан список из n целых чисел a1,a2,...,an. Включить после каждого элемента с максимальным значением его копию(продублировать). Код: struct list { int info; list *next; }; void MakeL(list * &head, int n) { list *a,*b;
C++ C и doc, вытащить инфу
Здравствуйте, есть куча файлов с мертвого винта, очень нужно с помощью с вытащить из них дату создания/автора, и занести это в какую-нибудь таблицу. Собственно открывал в np++ doc файл и не смог найти где там хранится таблица с этими данными и в каком виде, подскажите где и как вытащить.
C++ графика http://www.cyberforum.ru/cpp-beginners/thread307673.html
Помогите сделать красивую графическую заставку на си!
C++ Библиотека. Должники ООП С++ Есть программа для библиотеки. Мне нужно реализовать поиск читателей - должников (т.е тех кто держит книгу больше месяца). Вот основные фрагменты: Основной класс прописан в хеадер файле: class Library{ public: Library(){} ~Library(){} подробнее

Показать сообщение отдельно
togramago
9 / 9 / 0
Регистрация: 03.11.2009
Сообщений: 39
29.05.2011, 23:02     двунаправленный список.
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
//#include <stdafx.h>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <cstdio>
 
using namespace std;
struct Item
{
    char data[50];
 
    Item *next;
    Item *prev;
 
};
 
Item*head, *current, *last;
char str[50];
int n1, n2;
FILE*file;
 
void add(char* val)
{
    if (head == 0)
    {
        head = new Item;
        strcpy(head->data, val);
        head->next = head;
        head->prev = head;
        last = head;
    }
    else
    {
        current = new Item;
        strcpy(current->data, val);
        current->prev = last; // пред элем = конец списка
        current->next = head; // след элем = начало списка (замыкание списка 1й этап)
        last->next = current; // у текущего посл элем-та след эл = тот который только что создали
        last = current; // и этот же элемент который создали будет последним т.к добавили в конец
 
        head->prev = last; // замыкание списка (2-ой этап)
    }
}
void show()
{
    current = head;
    cout << endl << "List:" << endl;
    while (current != head->prev)
    {
        cout << current->data << " ";
        current = current->next;
    }
    cout << endl;
 
}
 
int compare()
{
    Item * cur, * prev;
    prev = head;
 
    while ((cur = prev->next) != head){ //пока хвост не замкнется
        if (strcmp(cur->data, prev->data) == 0) //проверяем не равны ли у них значения поля дата
            return 1; //если хоть один равен, то выходим, благополучно возвращая единицу
    }
    return 0;
}
 
int main()
{
    head = NULL;
    last = NULL;
    do
    {
        system("cls");
        int key;
        cout << "1. Read list from file." << endl;
        cout << "2. Show list." << endl;
        cout << "3. Show same elements" << endl;
        cout << "4. Delete same elements." << endl;
        cout << "5. Exit." << endl;
        cout << "\nChoose menu item: ";
        cin >> key;
        switch (key)
        {
        case 1:
        {
            file = fopen("list.txt", "r+");
            while (!feof(file))
            {
                fscanf(file, "%s", str);//здесь же надо считать строку? или нет?
                add(str);
            }
            fclose(file);
            cout << "The list is created!" << endl;
            system("pause");
            break;
        }
        case 2:
        {
            show();
            system("pause");
            break;
        }
            //case 3:{compare();system("pause");break;}
            //case 4:{del();system("pause");break;;
        case 5:
        {
            exit(1);
        }
        default:
        {
            cout << "Error" << endl;
            break;
        }
        }
    } while (1);
}
 
Текущее время: 22:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru