![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 03.03.2010
Сообщений: 7
|
![]()
Здраствуйте! Перейду к делу...По условию задачи в файле надо найти максимально длинное слово и вывести его на печать...если таких несколько вывести все...разделителями считать все кроме латиницы(именно из латиницы по условию и состоят слова)
Код:
Код:
|
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 11.10.2009
Сообщений: 29
|
![]()
Хотелось бы сказать, что если программа найдет слово больше 30 символов, то она выйдет за выделеный участок памяти для хранения слова. А это плоха премета
![]() Советую поступить следующим образом: 1. С помощью одного цикла "while (!feof(f))" найти длину самого длинного слова, а также сколько таких слов. 2. Выделить память для этих слов, а также для указателей на соответсвующие слова в файле (чтобы запомнить, где начинаются эти слова). 3. С помощью другого цикла "while (!feof(f))" найти и запомнить указатели на эти слова. Если все указатели найдены - то выйти из цикла. 4. По указателям вывести слова (с помощью puts(). Посимвольно, без перехода на следующую строку. Если слово напечатано - переход на следующую строку). Не забудьте добавить проверку на наличии слов, освободить все динамически-выделенные массивы, закрыть файл. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 03.03.2010
Сообщений: 7
|
![]()
ну как сказал преподаватель в данной работе это не самое важное и можно ограничить слово..так что заморачиваться по исправления в данном направлении не очень хочется...если можешь скажи что не так с существующим кодом...а именно с циклом..почему не выводит слова
Последний раз редактировалось Sultan237; 08.03.2010 в 10:43. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
![]()
Исправил. Главное - после первого while нужно передвинуть указатель в начало файла, иначе второй while даже не выполняется. Ну и по мелочи...
Код:
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 03.03.2010
Сообщений: 7
|
![]()
точно..забыл совсем про это...уже ведь 2 дня голову ломаю..спасибо большое...
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нахождение и вывод максимального слова в файле на СИ | Sultan237 | Помощь студентам | 5 | 05.03.2010 01:18 |
Нахождение самого короткого слова | Диезушка | Помощь студентам | 2 | 20.10.2009 21:43 |
Нахождение Мин И Макс элементов Массива не стандартным способом. | gree | Помощь студентам | 5 | 17.06.2009 20:57 |
работа с массивами в С++ (нахождение мин и макс числа) | Lorden | Помощь студентам | 10 | 29.01.2009 21:42 |