- •Ю.Е. Алексеев, а.В. Куров
- •Часть 4
- •Алексеев Юрий Евтихович Куров Андрей Владимирович
- •8. Символьный тип данных
- •8.1 Общие сведения и библиотечные функции
- •8.2 Примеры программ обработки символьных данных
- •8.3 Задания на обработку символьных матриц
- •9. Строки
- •9.1 Общие сведения и библиотечные функции
- •9.2 Примеры программ обработки строк (массивова символов)
- •9.3 Задания на обработку строк
- •10. Типы данных структура и объединение
- •10.1 Общие сведения о структурах
- •10.2 Примеры программ обработки структур
- •10.3 Задания на обработку структур
- •10.4 Объединения
- •10.5 Примеры программ обработки объединений
- •11. Файлы
- •11.1 Основные сведения о файлах
- •11.2 Библиотечные функции для работы с файлами
- •11.3 Примеры программ обработки текстовых файлов
- •11.4 Задания на обработку текстовых файлов.
- •11.5 Примеры программ обработки бинарных файлов
- •11.6 Задания на бинарные файлы.
- •12. Тип данных указатель
- •12.1 Общие сведения Объявления и присваивания
- •Операции с указателями
- •Приоритеты операций при работе с указателями.
- •Взаимосвязь массивов и указателей
- •12.2 Динамические переменные и массивы Динамические переменные
- •Динамические массивы
- •Двумерные динамические массивы
- •Доступ к элементам динамической матрицы
- •Библиотечные функции с для работы с динамическими переменными и массивами
- •Передача в функции динамических массивов
- •13 Динамические структуры данных
- •13.1 Списки Линейный список
- •Пример программы работы с однонаправленным списком
- •Пример программы работы с двунаправленным списком
- •13.2 Задания на обработку списков.
- •13.3 Деревья бинарные
- •Структура бинарного дерева
- •Примеры работ с бинарным деревом
- •Список литературы
- •Алфавитный указатель
- •Вопросы для самопроверки Символы
- •Структуры
- •Указатели
9.3 Задания на обработку строк
Общее для всех заданий.
Слово - последовательность символов, не содержащая символов-разделителей. Слова друг от друга отделяются одним или несколькими символами-разделителями. В начале и в конце строки могут стоять разделители (произвольное количество). Строки могут содержать буквы русского алфавита. Пояснения к выводимым данным и полученным результатам должны быть на русском языке. Минимизировать количество перекодировок строк в рабочем (не отладочном) варианте программы (отладочные операторы превратить в комментарии).
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. Найти в строке все слова, начинающиеся заглавной гласной буквой и в которых количество согласных превышает количество гласных. Найденные слова распечатать в порядке, обратном алфавитному. Если таких слов нет, то выдать сообщение.
