Процедура не возвращает значение - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Проблема вот в чем,в одной процедуре создаётся дерево оптимального поиска,а в другой происходит добавление вершины в дерево.Делала по алгоритму с методички. Проблема в том что в процедуру add_tree не возвращается полученное значение root ,оно становится процедуре create_tree снова пустым. Пошагово тоже проверяла,результата никакого.Помогите разобраться.
ptree *NewNode(char k)
{
    ptree *p = (ptree*)malloc(sizeof(ptree));   // ўл¤Ґ«Ёвм Ї*¬пвм
    p->data = k;                            // ¤***лҐ 
    return p;
}
ptree * add_tree(ptree *root, char info)
{
    ptree **p;
    p=&root;
    
    while((*p)!=NULL) 
    {
        if ((*p)->data > info)
        {   
            p=&(*p)->Left;
            cout<<(*p)->data;
        }
        else
        {
            if ((*p)->data < info )
            {
                p=&(*p)->Right;
            }
            else
            {
                 break; 
            }
        }
    }
    if((*p)==NULL)
     {
         *p=NewNode(info);
         //return *p;
     }
    
     return root=*p;
}
void create_tree(ptree *root,vertex *arr,int kolvo)
{
    int max;
    int i,j,index;
    root= NULL;
    
    int nomer ;
    max = 0;
        nomer = 0;
    for(i=0;i<kolvo;i++) 
    {
        arr[i].use=false;
    }
    for(i=0;i<kolvo;i++)
    {
        max = 0;
        nomer = 0;
        for(j=0;j<kolvo;j++)
        {
            if((arr[j].ves > max)&&(arr[j].use==false))
            {
                max=arr[j].ves;
                nomer=j;
            }
        }
        arr[nomer].use=true;
        add_tree(root,arr[nomer].inf);//в этом месте значение снова становится ноль.проверяла пошагово
        
    }
}

Решение задачи: «Процедура не возвращает значение»

textual
Листинг программы
void create_tree(ptree *root,vertex *arr,int kolvo)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.286 из 5
Похожие ответы