Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Бин-дерево на консоль 
:(
    Опции темы
intel
Дата 10.12.2009, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 5.7.2007

Репутация: нет
Всего: нет



Привет

Пишу функцию на Си, которая принтит дерево на консоль. Дерево лежит в масиве размера size Всё вроде елементарно, но что-то никак.
В общем вот что я уже сделал (При вызове n равна нулю):
Код

void print(int n)
{
    if (n < size)
    {        
        printf("--|%c", heap[n]);

        printf("\n");
        print_space(n);
        
        print(n * 2 + 1);

        print(n * 2 + 2);

        n = n + 1;
    }  
}


А вот что она выдаёт:

--|a
--|b
 --|d
   --|n
        --|h
         --|g
    --|p
          --|c
  --|i
     --|j
      Press any key to continue ...

Всё вроде ничего, но обратите внимание на то, где остановилась каретка в последней строке! И ещё - пробелы перед каждой буквой, тоже не правильны.
Короче, вот так она должна выдавать на консоль:

|-- a
    |-- b
        |-- d
            |-- n
            |-- h
        |-- g
            |-- p
    |-- c
        |-- i
        |-- j

Прошу помочь. Спасибо
PM MAIL   Вверх
maxdiver
Дата 10.12.2009, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 29.1.2008
Где: Саратов

Репутация: 16
Всего: 18



Для начала, print_space должна идти перед printf. Возможно, этого и достаточно для правильной работы.
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0376 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.