Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Forumhelp
1 / 1 / 10
Регистрация: 06.06.2013
Сообщений: 130
#1

Как исправить ошибку? - C++

18.11.2013, 23:38. Просмотров 356. Ответов 5
Метки нет (Все метки)

Предупреждение 5 warning C4700: использована неинициализированная локальная переменная "a" 93строчка


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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <locale.h>
struct unit
{
    int k;
    unit *left, *right;
};
void push(int a,unit **tr)
{
    if (*tr==NULL) 
    {
        *tr=new unit;
        (*tr)->k=a; 
        (*tr)->left=(*tr)->right=NULL; 
        return; 
    }
    if (a>(*tr)->k) 
        push(a,&(*tr)->right);
    else 
        push(a,&(*tr)->left);
}
void disp(unit *tr,int lvl)
{
    if(tr)
    {
        disp(tr->left,lvl + 1);
        for(int i=0; i<lvl; i++) 
            printf("  ");
        printf("%i\n",tr->k);
        disp(tr->right,lvl + 1);
    }
}
 
 
 
void delnode(unit *tree, unit **secondtree,int c)
{
    if(c!=tree->k)
        push(tree->k,secondtree);
    if(tree->left!=NULL)
        delnode(tree->left,secondtree,c);
    if(tree->right!=NULL)
        delnode(tree->right,secondtree,c);
}
 
void printmax(unit *tr,int c)
{
    if(tr==NULL)
        return;
    if(tr->left!=NULL)
        printmax(tr->left,c);
    if(tr->right!=NULL)
        printmax(tr->right,c);
    if(tr->left==NULL&&tr->right==NULL)
        return;
    else if (tr->k>c)
    {
        printf("%i ",tr->k);
        return;
    }   
}
 
void del(unit *tr)
{
    if(tr==NULL)
        return;
    if((tr)->left!=NULL)
        del((tr)->left);
    if((tr)->right!=NULL)
        del((tr)->right);
    delete tr;
}
 
void main()
{   
    
    setlocale(0,"Russian");
    unit *start=NULL, *fin=NULL;
    
int n;
 
int a;
 
printf("введите количество элементов ");
scanf("%i",&n);
 
for (int i=0; i<n; ++i) {
printf("Введитете число \n");
scanf("%i",&n);
push(a,&start);
}
    printf("Дерево:\n");
    disp(start,0);
    int key;
    printf("\nВведите значение: ");
    scanf("%i",&key);
    printf("\n");
    printmax(start,key);
    printf("\nВведите узел для удаления: ");
    int kd;
    scanf("%i",&kd);
    delnode(start,&fin,kd);
    disp(fin,0);
    del(start);
    del(fin);
    _getch();       
}

http://www.cyberforum.ru/cpp-beginners/thread1541002.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2013, 23:38
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как исправить ошибку? (C++):

Как исправить ошибку?
Ошибка 7 error LNK1120: 1 неразрешенных внешних элементов Ошибка 6 error...

Как исправить ошибку?
int f(int, int, int); void koorx(int, int, int, int); int nod(int, int);...

Как исправить ошибку?
Программирую в КБ. Выходит одна ошибка, понятия не имею как исправить....

Как исправить ошибку?
D:\C++\az\main.cpp|6|error: expected unqualified-id before '{' token| ||===...

Как исправить ошибку
Process exited with return value 3221225725 выскакивает после запуска...

5
stima
495 / 345 / 93
Регистрация: 22.03.2011
Сообщений: 1,107
Завершенные тесты: 2
18.11.2013, 23:43 #2
Это не ошибка, а предупреждение. И вашем случае вполне уместное. Посмотрите внимательней на строку 92.
1
Forumhelp
1 / 1 / 10
Регистрация: 06.06.2013
Сообщений: 130
19.11.2013, 00:32  [ТС] #3
scanf("%i",&a); так??
0
stima
495 / 345 / 93
Регистрация: 22.03.2011
Сообщений: 1,107
Завершенные тесты: 2
19.11.2013, 00:34 #4
Ну по поводу "a", да.
1
Forumhelp
1 / 1 / 10
Регистрация: 06.06.2013
Сообщений: 130
19.11.2013, 00:47  [ТС] #5
О ну вроде работает)) Может будут какие-то замечания?)
0
stima
495 / 345 / 93
Регистрация: 22.03.2011
Сообщений: 1,107
Завершенные тесты: 2
19.11.2013, 00:55 #6
1. Не используемые хедера.
2. После "if (cond) ruturn;" не имеет смылска писать "else if(other cond)", можно просто if(other cond);
3. Форматирование.
1
19.11.2013, 00:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2013, 00:55
Привет! Вот еще темы с решениями:

Как исправить ошибку?
#include &lt;stdio.h&gt; #include &lt;tchar.h&gt; #include &lt;stdlib.h&gt; #include...

Как исправить ошибку?
#include &lt;conio.h&gt; #include &lt;math.h&gt; #include &lt;iostream&gt; using namespace...

Как исправить ошибку?
#include &lt;fstream.h&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; #include...

Как исправить ошибку
доброго времени суток. вот у меня есть тут такой дефолт констрактор....


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

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

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