Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
KoscheyScrag
5 / 5 / 6
Регистрация: 24.02.2012
Сообщений: 86
1

Вывести генеалогическое дерево

23.11.2014, 02:52. Просмотров 580. Ответов 1
Метки нет (Все метки)

Здравствуйте. Задача состоит выводе бинарного дерева по принципу как на картинке.
Уже много времени ломаю мозг, не могу добиться форматированного вывода. Помогите пожалуйста.
Вот что у меня на данный момент имеется:
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
#include <stdio.h>
 
struct node {
    struct node *left;
    struct node *right;
    char *name;
};
 
struct node *createStructNode(char *name) {
 
    struct node * s= (struct node *)malloc(sizeof(struct node));
    s->name = name;
    return s;
}
 
 
void travel(struct node *root)
{
    if(root)
    {
        printf("%s\n", root->name);
 
        travel(root->left);
        travel(root->right);
    }
}
 
int main(void)
{
    struct node *stack;
 
   stack = createStructNode("Son");
   stack->left = createStructNode("Mother");
   stack->right = createStructNode("Father");
   stack->left->left = createStructNode("GrandMother");
   stack->left->right = createStructNode("GrandFather");
 
 
    travel(stack);
    return 0;
}
0
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2014, 02:52
Ответы с готовыми решениями:

Вывести на экран дерево вызова рекурсии
Здравствуйте, дана такая функция : int fibonacci_r(int n) { if (n == 0) return 0; if (n ==...

Как вывести в дерево (Tree Control) все полученные значения szValue
У меня есть CHAR szValue; -туда записывается строка. Есть цикл for. В нем (см. ниже) каждый раз,...

Методы индексирования на основе функции расстояния. Универсальное деление гиперплоскостями. Дерево биссектрис и МВ-дерево
Доброго времени суток. В поисках информации для курсовика жизнь занесла сюда :) Поделитесь...

Генеалогическое дерево
Подскажите пожалуйста с помощью чего сделать вывод информации и соединять по родству??? Может есть...

Генеалогическое дерево
Подскажите пожалуйста с помощью чего сделать вывод информации и соединять по родству??? Может есть...

1
anmartex
...
1787 / 1255 / 931
Регистрация: 12.02.2013
Сообщений: 2,056
23.11.2014, 12:33 2
KoscheyScrag, вот сам принцип:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void travel(struct node* root) {
    static int tab = 0;
    int i = tab;
    if (root) {
        while (i--) {
            printf("\t");
        }
 
        printf("%s\n", root->name);
 
        tab++;
        travel(root->left);
        travel(root->right);
        tab--;
    }
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2014, 12:33

генеалогическое дерево на C++
Помогите пожалуйста с утра сижу использую бинарное дерево.Не получаеться с вводом когда вожу...

Генеалогическое дерево
Всем добрый вечер(утро,день,ночь) Есть задание : Реализовать Генеалогическое дерево. Паспортные...

Создать генеалогическое дерево
Идея на курсовой: сделать генеологическое дерево, делать буду в студии (CLR). Понимаю что С++ для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru