Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные рабоы 2013г.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
162.82 Кб
Скачать

Лабораторная работа №3 Работа со строками. Динамические одномерные массивы

Цель работы

Изучение способов определения и обработки одномерных динамических массивов, правил использования стандартных функций для работы со строками.

№ варианта

Задание

1.

Имеется строка, содержащая буквы и цифры. Преобразовать эту строку так, чтобы сначала в ней шли все цифры, а затем – все буквы исходной строки.

2.

С клавиатуры вводится заданное предложение. Найти все слова, начинающихся с заданной буквы.

3.

Пусть цифрам от 1 до 9 соответствуют буквы от А(а) до I(i). С клавиатуры вводится строка. Составить новую строку из цифр, соответствующих только данным буквам, отсортированным по возрастанию.

4.

Для заданного с клавиатуры слова построить все его анаграммы, т.е. слова (возможно бессмысленные), состоящие из всех букв исходного слова, но расположенных в произвольном порядке.

5.

С клавиатуры вводится заданное количество слов. Найти все пары слов, одно из которых оканчивается на ту же букву, на которую начинается второе.

6.

Из двух заданных с клавиатуры слов составить различные виды кроссвордов. При невозможности составить кроссворд (в словах нет ни одной одинаковой буквы) сообщить об этом на экран монитора.

7.

С клавиатуры вводится предложение. Вывести на экран монитора слова из этого предложения в порядке убывания их длины.

8.

Во введенном с клавиатуры тексте подсчитать и показать на экране количество предложений, слов и символов.

9.

Найти в исходной строке все вхождения заданной подстроки и заменить их на другую строку с указанием номера очередного вхождения.

10.

С клавиатуры вводится предложение. Напечатать все предложения, которые получаются при перестановке слов исходного предложения.

Методические указания для выполнения задания

Примерный порядок выполнения задания:

  • Запросить у пользователя максимально возможную по условиям задачи длину строки Len.

  • Создать динамический символьный массив данного размера.

  • Запросить у пользователя исходную строку и записать ее в массив, созданный в пункте 2.

  • Если длина введенной строки меньше Len , изменить количество памяти, выделенной под массив в пункте 2 (уменьшить размер массива).

  • Выполнить действия, необходимые для решения задачи.

  • В процессе решения создать динамический массив нужной длины, содержащий результирующую строку, либо несколько массивов (в зависимости от условий задачи).

  • Освободить память, выделенную под все созданные во время работы динамические массивы, за исключением массива, содержащего результирующую строку (строки).

  • Вывести на экран монитора результат работы программы.

Для выполнения задания необходимо знать понятие строки как массива символов, заканчивающегося нулевым признаком ’\0’, правила определения динамического массива и обращения к элементам массива через указатели. Кроме того, необходимо знать и уметь применять функции для ввода-вывода строк, преобразования, определения длины строки, и основных функций манипулирования строками.