Форум программистов, компьютерный форум, киберфорум
C (Си)
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C (Си) Ищу книгу Джеймса Гренинга "TDD для Embedded C", русский перевод https://www.cyberforum.ru/ c/ thread2736597.html
Здравствуйте все ! Я ищу книгу Джеймса Гренинга TDD для Embedded C, русский перевод. Купил английский вариант, но этот английский тяжел для меня. Если можно, дайте ссылку, желательно без регистрации...
Ошибки при попытке чтения функций из другого файла файла C (Си)
Появилась необходимость сделать реализацию односвязного списка и использовать его из отдельного файла. Реализовал список, и создал файл .h со следующим кодом: #ifndef _LIST_H #define _LIST_H typedef struct lnode; typedef struct list; list *new_list (void); lnode *create_new_node (const char *data); lnode *insert_at_front (list *mylist, const char *data); void print_list (list *self);
C (Си) Двовимірний массив Допоможіть з масивом будь ласка! Таблиця символів Список складається з n рядків та 60 стовпців. Усі, кого ви знаєте, містять: назву місця та назву року, де рік є роком навчання і може дорівнювати 1, 2 або 3, наприклад Ян Ковальський 3 Вправа 1 1. Завантажте дані 2. Створіть з них окремі таблиці на кожен рік, що містять лише імена та прізвища 3. Переглянути створені таблиці. Вправа 2 У... https://www.cyberforum.ru/ c/ thread2734612.html C (Си) Ограничения fgets на кол-во символов Есть функция fgets, которая читает строки из файла. И есть у нее аргументы: int fgets (char *str, int n, FILE *stream); str - указатель на массив, в который будет помещена считанная строка. n – максимально допустимая длинна считываемой строки. stream – указатель на поток данных. У этой функции есть ограничение допустимой длины строки. Что делать, если количество символов в строке... https://www.cyberforum.ru/ c/ thread2734374.html
C (Си) Формирование, обработка и печать одномерного массива
Написать программу для формирования, обработки и печати одномерного массива. В постановках задач нумерация индексов начинается с 1, но в Си-программе нумерация индексов должна начинаться с 0. Исходный массив и результаты всех этапов работы распечатать. Каждый элемент последовательности a1, а2, ..., аn, n ≤ 10, умножить на его номер и упорядочить полученную последовательность в порядке...
C (Си) Чтобы код выдавал привильную ошибку.(Шифр Цезаря) https://www.cyberforum.ru/ c/ thread2734119.html
решает всё правильно, но почему то пробел она не считает за символ строки. Как можно сделать так, чтобы в строке мог быть и пробел? А так программа выдает ошибку 'ошибочная длина' если первая строка различается по длине от второго и ошибку 'ошибочный ввод' если строка содержит еще какой-то элемент помимо английского алфавита. Программа получает 2 значения на вход: зашифрованное слово и якобы...
C (Си) Программа с легким циклом https://www.cyberforum.ru/ c/ thread2733165.html
Нужно составить программу, не понимаю как.
Написать программу разложения функции в ряд Маклорена C (Си)
Нужна помощь(очень желательно, чтобы Вы смогли описать в двух-трех словах код) в написании программы на C, которая должна раскладывать ф-ию в ряд Маклорена. Ф-ия: f(x) = ln(1-x), a = 0. Заранее благодарю за помощь. (Надеюсь, что я не нарушаю правил форума, т.к. буквально прошу решить целую задачу за меня)
C (Си) Проблемы с выводом 0 Привет ребята! Прошу у вас вас помощи.Задача такова: на ввод даются числа из различного количества цифр.Впереди может стоять знак + или -.Если минус,то выводим его,если плюс,то выводим число без него.Ведущих нулей быть не может !Если длина выведенного сообщения меньше десяти знаков(без учета -),то дописываем нули в конец числа,чтобы число разрядов у выведенного числа было 10.Если изначально у... https://www.cyberforum.ru/ c/ thread2732568.html C (Си) Не находит файл Помогите, очевидно проблема в пути к файлу, но как бы не менял исправить не удается, подскажите в чём может быть проблема #include <stdio.h> #include <conio.h> #include <locale> #include <Windows.h> #include <iostream> using namespace std; https://www.cyberforum.ru/ c/ thread2732024.html
Выручите, пожалуйста C (Си)
Ребят, привет. Помогите пж, надо заменить значения двух соседних элементов массива на одно общее. Например, 'ab' заменить на 'c'.
C (Си) Одномерный массив https://www.cyberforum.ru/ c/ thread2731883.html
В одномерном массиве, состоящем из N вещественных элементов, вычислить:1)количество элементов массива, лежащих в диапазоне от А до В;2)сумму элементов массива, расположенных после максимального элемента.Упорядочить элементы массива по убыванию модулей элементов.A, B и N задаются с клавиатуры. Элементы массива задаются генератором случайных чисел. Здравствуйте, решаю вот такую вот задачу и...
447 / 323 / 129
Регистрация: 18.07.2017
Сообщений: 1,452
27.11.2020, 10:52 0

Создание М-мерного дерева - C (Си) - Ответ 15040445

27.11.2020, 10:52. Показов 2261. Ответов 1
Метки (Все метки)

Лучший ответ Сообщение было отмечено newmersedez как решение

Решение

Цитата Сообщение от newmersedez Посмотреть сообщение
Я написал создание вершины дерева, но совсем не понимаю, как написать потомков.
Самый ходовой способ для деревьев - рекурсия.
Цитата Сообщение от newmersedez Посмотреть сообщение
для этого я создал массив указателей на потомков и количество этих потомков
Еще вариант - Один указатель на первого потомка, а второй на "брата". Да, памяти по-больше расходуется, но логика создания новых элементов проще.
Цитата Сообщение от newmersedez Посмотреть сообщение
но как это представить в языке СИ
Способ один - выделить память под нужное количество потомков и заполнить корректно данными. А вот на какие данные ты будешь ориентироваться при создании потомка/ов зависит от задачи которую решаешь. Если нужен пример, держи. Но его всеравно нужно подгонять под твою задачу: логика выхода из рекурисии, сколько потомков создать для родителя и тд.
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
#include <stdio.h>
#include <stdlib.h>
 
#define N 10 // Глубина рекурсии
 
typedef struct treeNode{
    char data;
    int childs;
    struct treeNode *childPtr;
}treeNode;
 
treeNode* createChilds(int count);
void recursive(treeNode* begin, int levels);
void clearTree(treeNode* begin);
 
int main(){
    treeNode* begin = createChilds(N);
    recursive(begin, N);
    clearTree(begin);
}
 
treeNode* createChilds(int count){
    treeNode* ptr = (treeNode*)malloc(sizeof(treeNode) * count);
    int i = 0;
    while(i<count){
        ptr[i].data = 0;
        ptr[i].childs = 0;
        ptr[i].childPtr = NULL;
        i++;
    }
    return ptr;
}
 
void recursive(treeNode* begin, int levels){
    if(levels == 0) return;
    int i = levels;
    while(i--) {
        begin->childPtr = createChilds(levels);
                begin->childs = levels;
        recursive(begin->childPtr + i, levels - 1);
    }
}
 
void clearTree(treeNode* begin){
    if(begin == NULL) return;
    int i = begin->childs;
    while(i--) clearTree(begin->childPtr + i);
    free(begin);
}


Вернуться к обсуждению:
Создание М-мерного дерева C (Си)
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.11.2020, 10:52
Готовые ответы и решения:

Структура K-мерного дерева
Есть класс узла дерева : class Node { const int N = 2; public int key; public...

Вывод на экран n-мерного дерева.
Есть н мерное дерево. Надо вывести в окне консольки. Структура такая: struct Tree{ int...

Создание эн-мерного массива
Приветствую Вас, помогите разобраться: Как создать массив произвольной размерности, имеется...

создание 2-мерного массива
Доброго времени суток! Нужна помощь по C# Дан набор вещественных чисел, которые нужно прочитать из...

1
27.11.2020, 10:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2020, 10:52
Помогаю со студенческими работами здесь

Создание 3-х мерного динамического массива
Что-то туплю.. не могу сделать 3-х мерный динамический массив int *a;int q,n,r,v;int ***b;int...

Создание n-мерного динамического массива
Ломаю голову над реализацией функции, которая создаёт n-мерный динамический массив. Возможно ли это...

создание 2х мерного массива со случайными числами
Нужно создать программу: создание 2х мерного массива со случайными числами, мин/макс кол во...

Создание 2х мерного массива типа чар, с неупорядоченными элементами
Помогите создать 2х мерный массив типа чар, где строки будут от 1 до 10 а столбцам будут присвоены...

Опросник. Создание дерева зависимостей в treeView, сохранение дерева в XML, построение дерева в treeView из XML
Всем доброго времени суток. Тема является продолжением вот этой темы. Создаю 2ю, так как там...

Постороить из 2 мерного массива в 1 мерный, который содержит все элементы 2 мерного массива , содержащихся по периметру массива
Постороить из 2 мерного массива в 1 мерный, который содержит все элементы 2 мерного массива ,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru