Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ввод и вывод односвязного списка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Помогите пож создать программу на С++ чтобы выводился список только тех студентов, у которых больше одной двойки http://www.cyberforum.ru/cpp-beginners/thread571369.html
Пример решения задачи Задача. Входной файл st.txt содержит сведения о сдаче студентами группы экзаменационной сессии. Каждая запись файла содержит фамилию и инициалы студента (15 символов) и...
C++ Кодировка Подскажите пожалуйста - как сделать так чтобы программа на с++ работал с персидкими текстами??? у меня входной файл на персидском- .txt -а там не читается - и вообще не знаю - если будет читаться -... http://www.cyberforum.ru/cpp-beginners/thread571365.html
Найти точку D, симметричную точку A относительно стороны BC. C++
помогите пожалуйста решить задачу.
C++ Поворот системы координат
Есть некая карта маршрута. Есть некий шар который должен по этому маршруту двигаться. Но движение должно осуществляться не самого шара по клику на карте, а карты. Таким образом что бы шар всегда...
C++ Подскажите пожалуйста решение задачи. http://www.cyberforum.ru/cpp-beginners/thread571352.html
Найти точку D, симметричную точку A относительно стороны BC.
C++ Написать программу, позволяющую Написать программу, позволяющую получить словесное наименование цифр. подробнее

Показать сообщение отдельно
qwe12355
7 / 7 / 0
Регистрация: 26.11.2011
Сообщений: 117
11.05.2012, 19:33
все одинаковые выводит т.к. ты крутишься на месте, у те бя же написано
C++
1
tec->sled=tec;
а бредовые числа потому что ты что-то не то написал в создании списка
я бы так сделал, чтобы можно было в будующем еще обращаться к списку(а лучше в функциях это все написать).
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
void main()
{ 
    int n;
    struct elsp *tec=NULL,*start=NULL,*last=NULL;
    unsigned i;
    tec=NULL;
    cout<<"Vvedite kol-vo elementov spiska ";
    cin>>n;
 
    for(i=1;i<=n;i++)
    {
        tec = new struct elsp;
        cin>>tec->id;
        if(start==NULL) //если вводиться первый элемент запомнить его в start 
        {
            start=tec;
            last=tec;
        }
        last->sled=tec;//в последнем элементе устанавливаю ссылку на новый
        last=tec;//новый элемент делаю последним
        last->sled=NULL;//обнуляю ссылку в новом элементе
    }
 
 
    tec=start;
 
 
    for(i=1;i<=n;i++)
    {
        cout<<(tec->id);
        tec=(tec->sled);
    }
    getch();
 
}

ну или если вы хотите свой код исправить, чтобы он просто работал то:
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
void main()
{ 
    int n;
    struct elsp *tec=NULL,*start=NULL;
    unsigned i;
    tec=NULL;
    cout<<"Vvedite kol-vo elementov spiska ";
    cin>>n;
    tec=((struct elsp*)malloc(sizeof(struct elsp)));
    start=tec;//запомінаю начало списка
    for(i=1;i<=n;i++)
    {
    cin>>(tec->id);
    tec->sled=((struct elsp*)malloc(sizeof(struct elsp)));
    tec=tec->sled;
    
    }
 
    for(i=1;i<=n;i++)
    {
        cout<<(start->id);
        start=(start->sled);
    }
    getch();
 
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru