|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.09.2010, 19:16 | #1 |
Пользователь
Регистрация: 30.10.2009
Сообщений: 56
|
Ошибка в программе
Код:
Не могу понять почему, где я так забиваю *root ... может кто поможет, буду благодарен!) Последний раз редактировалось Stilet; 01.10.2010 в 09:21. |
01.10.2010, 00:52 | #2 |
Форумчанин
Регистрация: 21.04.2010
Сообщений: 144
|
ты чтоли опиши что программа делает, ато ведь не знвешь на что смотреть. Но из того, что увидел:
1. Вводится чисто визуально слово, но в переменную temp заносится только 1-я буква (там по идее должен быть массив под слово, как и в структуре). Но опять же, мот оно тебе так и надо, так что опиши задачу. 2. При выборе Код:
3.и последнее, строка Код:
Код:
|
01.10.2010, 00:58 | #3 |
Пользователь
Регистрация: 30.10.2009
Сообщений: 56
|
Извиняюсь!)
действительно забыл задание Англо-русский словарь построен как бинарный список (двоичное дерево). Каждая компонента содержит английское слово,соответствующее ему русское слово и счетчик количества обращений к данной компоненте. Первоначально бинарный список был сформирован согласно английскому алфавиту. В процессе эксплуатации словаря при каждом обращении к компоненте в счетчик обращений добавлялась единица. Составить программу, которая: -обеспечивает начальный ввод словаря с конкретными значениями счетчиков обращений; -формирует новое представление словаря в виде двоичного дерева по следующему алгоритму: а) в старом словаре ищется компонента с наибольшим значением счетчика обращений; б) найденная компонента заносится в новый словарь и удаляется из старого; в) переход кп. а) до исчерпания исходного словаря. -производит распечатку исходного и нового словарей. Программа должна обеспечивать диалог с помощью меню , ввод/вывод в окна и контроль ошибок при вводе. Указание: использовать динамические структуры. |
01.10.2010, 01:22 | #4 |
Пользователь
Регистрация: 30.10.2009
Сообщений: 56
|
Код:
и программа перестала выдавать ту дурацкую ошибку, но появилась другая ( вложенный файл) по пункту 2 есть вопрос, а зачем очищать буфер? + слышал что происходят такие вещи что программа выдаёт из-за этого ошибки а вот что насчёт пункта 1, я скинул задание и ещё один вопрос может использовать тип данных не char а string ? и тогда проблемы уйдут? просто столкнулся с проблемой что Visual Studio при подключении библиотеки <string.h> просто не признаёт тип данных string поэтому решил воспользоваться char это не критично? Последний раз редактировалось Stilet; 01.10.2010 в 09:21. |
01.10.2010, 15:14 | #5 |
Форумчанин
Регистрация: 21.04.2010
Сообщений: 144
|
буфер надо очищать по одной простой причине, после ввода, в буфере остаётся код кнопки enter и следующий cin подхватывает его, как если бы вы enter нажали, вседствие чего программа и циклится.
Теперь что касается самого слова. char- символ. паскалевского типа string в си нет. Чтобы записать слово надо выделить память под строку, и лучше всего динамически. Т.е. Код:
Насчёт последней ошибки не врубился. Что не так то? Если после ввода слова невозможно ввесити значение счётчика(после нажатия enter сразу выскакивает меню), то это всё тот же буфер, по крайней мере похоже на то, так что fflush(stdin) в помощ Последний раз редактировалось Farrel; 01.10.2010 в 15:20. |
07.10.2010, 17:19 | #6 |
Пользователь
Регистрация: 30.10.2009
Сообщений: 56
|
Код:
ошибка во вложенном файле Последний раз редактировалось Stilet; 07.10.2010 в 18:51. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка в программе | Vladislav514 | Софт | 0 | 13.07.2010 15:16 |
Ошибка в программе | larin1974 | Помощь студентам | 7 | 06.03.2010 20:44 |
Ошибка в программе | RoadTrain | Общие вопросы Delphi | 5 | 24.10.2007 22:16 |