
Лаб по С и С++ / Лаб_С_№7
.pdf
ЗАДАЧИ ПО ТЕМЕ “ФУНКЦИИ И СТРОКИ”
Условия выбора варианта
подгруппа |
1 |
2 |
3 |
№ машины |
№ варианта |
№ варианта |
№ варианта |
1 |
1 |
11 |
|
2 |
2 |
12 |
9 |
3 |
3 |
1 |
10 |
4 |
4 |
2 |
11 |
5 |
5 |
3 |
12 |
6 |
6 |
4 |
1 |
7 |
7 |
5 |
2 |
8 |
8 |
6 |
3 |
9- admin |
9 |
7 |
4 |
10** |
10 |
8 |
5 |
1
задача №1. Написать и протестировать функцию STRP(str1,str2), которая возвращает указатель на первое вхождение символа из строки str2 в строку str1. Если ни один символ из строки str2 не входит в строку str1, то возвратить NULL.
задача №2. Распечатать введенную строку, исключив из нее те символы, которые находятся между скобками ( ). Сами скобки не удалять . Если хотя бы одной скобки нет – сообщить об этом
|
|
|
|
2 |
|
|
|
|
задача №1. Распечатать строку, которая получается из введенной строки |
||||||
путем |
удаления |
из |
нее |
слов |
с |
четными |
номерами. |
Например, из строки Я от бабушки ушел, я от дедушки ушел. |
|
||||||
Должно получиться |
Я бабушки, я дедушки. |
|
|
|
|||
|
задача №2. Выделить из строки str1 все слова, начинающиеся с согласной |
буквы, а из строки str2 – слова, начинающиеся с гласной. Образовать строку str3, состоящую из выделенных слов обеих строк. Строки str1 и str2 программа должна получать за счет ввода.
задача №3.
3
задача №1. Написать и протестировать функцию STRP(str1,str2), которая возвращает указатель на последнее вхождение символа из строки str2 в строку str1. Если ни один символ из строки str2 не входит в строку str1, то возвратить NULL.
задача №2. Выделить из строки str1 все слова, начинающиеся с гласной буквы, а из строки str2 – слова, начинающиеся с согласной. Образовать строку str3, состоящую из выделенных слов обеих строк. Строки str1 и str2 программа должна получать за счет ввода.
4
задача №1. Напишите функцию palindrom, получающую строку в качестве параметра и проверяющую, является ли эта строка палиндромом. Фраза называется палиндромом, если она читается от конца к началу так же, как от начала к концу при игнорировании всех знаков, кроме букв и в предположении, что большие и маленькие буквы одинаковы. Например, фраза "Аргентина манит негра - палиндром". Напишите программу, c помощью которой протестируйте функцию palindrom.
задача №2. Написать и протестировать функцию DELETE (s1,s2), которая удаляет из строки s1 все символы, встречающиеся в строке s2.
5

задача №1. Напишите функцию str_cpy(s,t) копирования строки t в строку s. Напишите две версии функции: основанную на работе с массивами, основанную на работе с указателями.
задача №2. Распечатать строку, которая получается из введенной строки путем удаления из нее слов, которые состоят менее чем из трех букв
6 |
|
задача №1. Напишите функцию common(общее),которая получает |
две |
строки str1 и str2 и возвращает строку, содержащую символы, присутствующие |
(по |
крайней мере однократно) в обоих строках. Например, применение этой функции к строкам "указатель" и "закон" должно дать каз" (или те же символы в каком-то ином порядке).
задача №2. Ввести строку, слова в которой разделены пробелами и запятыми. Распечатать эту строку, удалив из нее те слова, которые встретились в ней более одного раза
7
задача №1. Произвести выравнивание по правому краю введенного текста, для чего к каждой строке применить функцию WIDE(str,k), которая равномерно вставляет пробелы между словами так, чтобы длина строки str стала равной k. (Величина k должна быть больше длины самой длинной строки текста.)
задача №2. Напишите программу, определяющую, является ли введенная строка палиндромом. Палиндром – фраза, которая читается справа налево и слева направо одинаково без учета регистра букв и наличия пробелов. Например, строка Аргентина манит негра — является палиндромом.
8
задача №1. Написать и протестировать функцию STREND(str1,str2), которая возвращает 1, если строка str1 расположена в конце строки str2, и 0 в противном случае.
задача №2. Выделить из строки str1 все слова, начинающиеся с согласной буквы, а из строки str2 – слова, начинающиеся с гласной. Образовать строку str3, состоящую из выделенных слов обеих строк. Строки str1 и str2 программа должна получать за счет ввода.
9
задача №1. Написать и протестировать функцию ISSUBSTR(str1,str2), которая выясняет, является ли строка str1 подстрокой строки str2. Функция должна возвратить номер позиции, с которой начинается подстрока, либо –1, если подстрока не найдена.
|
задача №2. Распечатать строку, которая получается из введенной строки |
||||||
путем |
удаления |
из |
нее |
слов |
с |
четными |
номерами. |
Например, из строки Я |
от |
бабушки |
ушел, |
я |
от дедушки ушел. |
||
Должно получиться |
Я бабушки, я дедушки. |
|
|
|
10
задача №1. Написать и протестировать функцию STRP(str1,str2), которая определяет, встретился ли в строке str1 какой-нибудь символ из строки str2. Функция должна возвращать номер позиции первого символа строки str1, совпадающего с каким-либо символом строки str2, или –1, если совпадений нет.
задача №2. Выделить из строки str1 все слова, начинающиеся с гласной буквы, а из строки str2 – слова, начинающиеся с согласной. Образовать строку str3, состоящую из выделенных слов обеих строк. Строки str1 и str2 программа должна получать за счет ввода.

11
задача №1. Написать и протестировать функцию подсчѐта слов, начинающихся с конкретной буквы, в строке.
задача №2. Ввести строку, слова в которой разделены пробелами и запятыми. Распечатать эту строку, удалив из нее те слова, которые встретились в ней более одного раза