9 / 9 / 0
Регистрация: 06.01.2011
Сообщений: 73
|
|
1 | |
В файле заменить каждый символ первого наиболее короткого слова на «*»13.03.2011, 10:30. Показов 7192. Ответов 6
Метки нет Все метки)
(
помогите пожайлуйста, только с доходчивым объяснением), Заранее огромное спасибо
В существующем на диске файле заменить каждый символ первого наиболее короткого слова на «*». (Считать, что слова разделены одним или несколькими пробелами или символами новой строки ‘\n’. Файл создать с помощью текстового редактора) Вспомогательный файл не использовать. ПОМОГИТЕ хотя бы самой идеей, пожайлуйста
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
13.03.2011, 10:30 | |
Ответы с готовыми решениями:
6
Заменить каждый символ массива встречающийся после первого вхождения символа * на символ - Заменить каждый символ, встречающийся после первого вхождения сочетания, на символ "!" |
1 / 1 / 0
Регистрация: 12.03.2011
Сообщений: 27
|
|
13.03.2011, 12:41 | 2 |
Читаем файл построчно. Ищем наиболее короткое слово: считаем символы между пробелами пример: dshgf we h fgr woieur e ищем первый и второй пробел, и измеряем длину, если 2 пробела подряд, то длина 1. длина 2 - значит 1 символ (h) 3 - значит 2 символа (we) и так далее проверяем на ситуацию, когда 1 символ последний. (e) Во время поиска первого пробела у нас будет указатель на него. пусть это ptr_sp Тогда если условие выполнится, нам надо str1[prt_sp+1]='*' функция для поиска strchr(str1,' '), вернет указатель на 1 вхождение пробела
0
|
9 / 9 / 0
Регистрация: 06.01.2011
Сообщений: 73
|
|
13.03.2011, 15:29 [ТС] | 3 |
а как узнать, что слово самое короткое и оно первое?
0
|
1 / 1 / 0
Регистрация: 12.03.2011
Сообщений: 27
|
|
13.03.2011, 16:02 | 4 |
Можно при обработке файла завести переменную, которая будет хранить длину куска.
Если следующий кусок строго меньше текущего, то текущим становится следующий. То есть ты проходишь строку, на выходе должен получить указатель на пробел перед самым коротким словом.
0
|
Заблокирован
|
||||||
13.03.2011, 16:43 | 5 | |||||
Решение:
0
|
Модератор
![]() ![]() ![]() ![]() 11652 / 7164 / 1701
Регистрация: 25.07.2009
Сообщений: 13,124
|
||||||
13.03.2011, 18:08 | 6 | |||||
0
|
9 / 9 / 0
Регистрация: 06.01.2011
Сообщений: 73
|
|
14.03.2011, 21:41 [ТС] | 7 |
Простите пожайлуйста, но ни могли бы вы показать мне эту часть цикла)
Благодарен
0
|
14.03.2011, 21:41 | |
Помогаю со студенческими работами здесь
7
Найти в файле каждый символ из строки и заменить его на соответствующие символы
Каждый символ ? удвоить. Каждый символ, стоящий перед !, заменить символом, введенным с клавиатуры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |