- •Массив и указатель: различия
- •Ввод-вывод символьных данных и строк
- •1) Ввод-вывод одиночного символа
- •Например:
- •Например:
- •Внутренние коды символов
- •Функции для работы со строками
- •Пример 7.
- •Пример 8.
- •Пример 24.
- •Пример 25.
- •Пример 26:
- •Пример 27
- •Ключевые термины
- •Краткие итоги
- •Контрольные вопросы
- •Задание.
Задание.
При выполнении данной лабораторной работы необходимо решать каждую задачу с использование указателей и функций для работы со строками. Не использовать символьные массивы с фиксированным количеством элементов. Максимально экономно подходить к использованию памяти.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Подсчитать, сколько слов в строке.
Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы.
Дана строка. Преобразовать ее, удалив каждый символ * и повторив каждый символ, отличный от *.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой, содержащая английский текст. Найти количество слов, начинающихся с буквы b.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Вывести на экран слова, содержащие три буквы.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Удалить в каждом слове текста последнюю букву.
Дана строка. Подсчитать, сколько в ней букв r, k, t.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Определить, сколько раз входит в нее группа букв abc.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Удалить в каждом слове текста первую букву.
Дана строка. Определить, сколько в ней символов *, ;, :.
Дана строка. Подсчитать, сколько различных символов встречается в ней. Вывести их на экран.
Из строки Str1 удалить все символы, входящие в строку Str2.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Найти длину самого длинного слова.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой Определить, сколько раз в строке встречается заданное слово.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. В каждом слове продублировать последнюю букву.
Дана строка символов, среди которых есть двоеточие (:). Определить, сколько символов ему предшествует.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Указать те слова, которые содержат хотя бы одну букву k.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. В тех словах, которые содержат хотя бы одну букву k продублировать первую букву.
Дана строка. Подсчитать самую длинную последовательность подряд идущих букв а.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Найти в ней те слова, которые начинаются и оканчиваются одной и той же буквой.
Дана строка из символов латинского алфавита. Замените все вхождения слова "two" на символ '2'.
Дана строка. Преобразовать ее, удалив каждый символ * и повторив каждый символ, отличный от *.
В записке слова зашифрованы — каждое из них записано наоборот. Расшифровать сообщение.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Заменить в ней слово he на she.
Дана строка. Определить, сколько раз входит в нее группа букв abc.
Отредактировать заданное предложение, удаляя из него те слова, которые встречаются в предложении заданное число раз.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Заменить в ней заданное слово на другое заданное слово. Если первое слово встречается несколько раз, то произвести несколько замен.
Дана строка. Подсчитать количество букв k в последнем ее слове.
Напечатать те слова, которые встречаются в каждом из двух заданных предложений.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Поменять в ней местами первое и последнее слово.
Дана строка символов, среди которых есть одна открывающаяся и одна закрывающаяся скобка. Вывести на экран все символы, расположенные внутри этих скобок.
Отредактировать заданное предложение, удаляя из него все слова с нечетными номерами.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Перевернуть в ней все слова с четными номерами.
Имеется строка, содержащая буквы латинского алфавита и цифры. Вывести на экран длину наибольшей последовательности цифр, идущих подряд.
Форматирование текста. Дан текст, состоящий из предложений, разделяемых точками. Напишите программу, производящую следующее форматирование: после каждой точки в конце предложения должен стоять хотя бы один пробел; первое слово в предложении должно начинаться с прописной буквы.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Заменить в ней все слова, начинающиеся с буквы m на mama.
Дан набор слов, разделенных точкой с запятой (;). Набор заканчивается двоеточием (:). Определить, сколько в нем слов, заканчивающихся буквой а.
Лишние пробелы. Дана строка, состоящая из слов, разделенных пробелами. Напишите программу, удаляющую лишние пробелы. Пробел считается лишним, если он:
• стоит в начале строки;
• стоит в конце строки;
• следует за пробелом.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. В каждом слове оставить только первые вхождения каждой буквы.
В строке заменить все двоеточия (:) точкой с запятой (;). Подсчитать количество замен.
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Преобразовать каждое слово в строке, удалив из него все вхождения первой буквы этого слова (количество пробелов между словами не изменять).
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Перед каждым четным по номеру слову вставить слово mama/
В строке удалить символ «двоеточие» (:) и подсчитать количество удаленных символов.
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Определить количество слов, которые начинаются и заканчиваются одной и той же буквой.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Если слово в строке заканчивается буквой а, то следующее за ним слово удалить.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Определить сколь слов в строке начинаются на заданную букву.
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Преобразовать каждое слово в строке, удалив из него все вхождения последней буквы этого слова (количество пробелов между словами не изменять).
В строке между словами вставить вместо пробела запятую и пробел.
Удалить часть символьной строки, заключенной в скобки (вместе со скобками).
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Заменить каждую первую букву слова со строчной на прописнуюю
Предложение состоит из слов, разделенных одним или несколькими пробелами. Оставить в строке только те слова, которые заканчиваются на заданный символ.
В строке имеется одна точка с запятой (;). Подсчитать количество символов до точки с запятой и после нее.
Дана строка-предложение из символов латинского алфавита. Вывести самое короткое слово в предложении (если таких слов несколько, то вывести первое из них).
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Поменять местами первое слово со вторым, третье с четвертым и т.д.
Строка содержит одно слово. Проверить, будет ли оно читаться одинаково справа налево и слева направо (т.е. является ли оно палиндромом).
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Определить количество слов, которые содержат ровно три буквы ' А '.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Напечатать те слова данной строки, которые отличаются от слова hello.
Проверить, одинаковое ли число открывающихся и закрывающихся скобок в данной строке.
В предложении, состоящем из слов, разделенных одним пробелом, заменить первую букву у слов, следующих за словами the, a, на прописную.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. После каждой буквы q добавить букву u.
Дана строка-предложение из символов латинского алфавита. Преобразовать строку так, чтобы каждое слово начиналось с заглавной буквы.
Дана строка-предложение из символов латинского алфавита. Вывести самое длинное слово в предложении (если таких слов несколько, то вывести последнее из них).
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Заменить все вхождения ph на f? а все вхождения ed на ing.
Даны две строки А и В. Составьте программу, проверяющую, можно ли из букв, входящих в А, составить В (буквы можно использовать не более одного раза и можно переставлять).
Например, А: ИНТЕГРАЛ; В: АГЕНТ — составить можно; В: ГРАФ — составить нельзя.
Определить, сколько раз в строке встречается заданное слово.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Удалить из нее повторно встречающиеся слова.
Строка содержит произвольный русский текст. Проверить, каких букв в нем больше: гласных или согласных.
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Определить количество слов, которые содержат введенный символ.
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Удалить из нее те слова, которые в ней встречаются по одному разу.
Строка состоит из слов, разделенных пробелами. Оставить между словами только по одному пробелу.
Выясните, имеются ли среди введенных символов все буквы, входящие в слово "yandex".
Дана строка, состоящая из слов, разделенных пробелами и заканчивающаяся точкой. Удалить из нее те слова, в которых первая буква встречается еще раз.
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Определить длину самого длинного слова.
Предложение состоит из слов, разделенных одним или несколькими пробелами. Написать программу, печатающую все слова, начинающиеся на введенный символ.
В английском предложении слова разделены одним пробелом. Во всех словах, следующих за артиклями а и the, удалить первую букву.
