1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

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

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Требуется помощь по динамическим спискам

Тема в разделе "С и С++", создана пользователем trancvilizator, 28 май 2007.

Статус темы:
Закрыта.
  1. trancvilizator

    trancvilizator Гость

    Репутация:
    0
    Второй день пютаюсь найти ошибку, дебаг не пашет.
    Задача элементарна - написать функции ввода и распечатки динамического списка.
    Проблема в том, что при распечатке на выход идут семизначные числа в бесконечном количестве.
    Посмотрите свежим взглядом, пожалуйста:
    Код:
    #include <iostream>
    using namespace std;
    
    struct chisla
    {
    int number;
    chisla* sled;
    };
    
    chisla *enter (int n)
    {
    chisla *nabor = new chisla;
    chisla *ukaz = nabor;
    for (int i=0; i<n; i++)
    {
    
    cout << "Enter the " << (i+1) << "st number -> ";
    cin >> ukaz->number;
    ukaz=ukaz->sled;
    if (i!=(n-1)) ukaz = new chisla;
    else ukaz=0;
    }
    return nabor;
    }
    
    void print (chisla *a)
    {
    while (a!=0)
    {
    cout << a->number << ' ';
    a=a->sled;
    }
    
    }
    
    int main()
    {
    int b;
    cout << "Enter the number of elements -> ";
    cin >> b;
    print(enter(B));
    return 0;
    }
     
  2. mms

    mms Гость

    Репутация:
    0
    Код:
    chisla *enter (int n)
    {
    chisla *nabor = new chisla;
    chisla *ukaz = nabor;
    for (int i=0; i<n; i++)
    {
    
    cout << "Enter the " << (i+1) << "st number -> ";
    cin >> ukaz->number;
    if (i!=(n-1)) ukaz->sled = new chisla;
    else ukaz->sled=0;
    ukaz=ukaz->sled;
    }
    return nabor;
    }
     
  3. trancvilizator

    trancvilizator Гость

    Репутация:
    0
    mms, спасибо огромное!
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей