ЗНАЕТЕ ЛИ ВЫ?

Лабораторная работа. Обработка символьных данных



Цель:получить практические навыки работы с символьной информацией – строками.

 

Общие сведения

Строка представляет собой массив значений типа char, завершающийся нулевым байтом ‘\0’, что следует учитывать при объявлении строки, т.е. указывать не N, а N+1 элемент. При инициализации строк используются традиционные методы объявления.

Для определения константы, равной длине инициализированной строковой переменной можно воспользоваться функцией sizeof().

Для ввода символьных переменных и строк в C предназначены функции scanf() (ввод до первого пробельного символа) или gets()избиблиотеки <stdio.h>. С++ дополнительно предоставляет пользователю две функции cin,get и cin.getlineизбиблиотеки <iostream.h>. Для вывода в этих же библиотеках существуют аналогичные функции.

При работе со строками чаще всего используются функции библиотеки <string.h>, в частности:

а) склеивание – последовательное объединение нескольких строк:

strcat (str1, str2);

б) копирование строк:

strcpy(str1, str2);

в) сравнение строк:

strcmp(str1,str2);

г) длина строки:

lenth=strlen(str1);

д) преобразование строчных символов в прописные:

strlwr(str1);

е) преобразование прописных символов в строчные:

strupr(str1);

ж) заполнение строки некоторым символом:

strset(str1,’символ’);

з) получить код символа:

n=int(a);

Задание к лабораторной работе

Решить задачу, соответствующую варианту, выбранному по таблице 5.1. Построить блок-схему программы и организовать ввод данных.

Таблица 5.1 – Варианты заданий

Вариант Задание
Заменить в строке, введенной пользователем, первую букву каждого слова, начинающегося с гласной буквы, на прописную.
Определить, сколько во введенной пользователем строке слов, состоящих не более, чем из четырех букв.
В строке, введенной пользователем, определить количество слов, содержащих не менее двух букв с.
Из строки, введенной пользователем, вывести на экран все слова, которые повторяются более 1 раза.
В строке, введенной пользователем, после каждой буквы с вставить восклицательный знак.
Сравнить строки, введенные пользователем с клавиатуры, и вывести результаты сравнения на экран.
В строке, введенной пользователем и состоящей из нескольких предложений, определить количество предложений.
В строке, введенной пользователем, поменять местами каждые два соседних слова.
Подсчитать количество слов в строке, введенной пользователем.
В строке, введенной пользователем, изменить порядок слов на обратный.
Из строки, введенной пользователем, вывести на экран слова, начинающиеся с гласных букв.
В строке, введенной пользователем, поменять первое слово с последним.
В строке, введенной пользователем, определить самое длинное слово.
Строку, введенную пользователем, переписать в обратном порядке.
Объединить все n строк, введенные пользователем. При вводе после каждой строки следует нажимать клавишу Enter.
В строке, введенной пользователем, заменить все строчные буквы прописными и наоборот.
В строке, введенной пользователем, заменить первые и последние k символов на символ *.
В строке, введенной пользователем, определить самое короткое слово.
Из строки, введенной пользователем, вывести на экран слова, которые заканчиваются на букву а.

Окончание таблицы 5.1

В строке, введенной пользователем, удвоить все буквы а.
В строке, введенной пользователем, заменить все строчные буквы на их ASCII код.
В строке, введенной пользователем, определить количество согласных букв. Вывести все согласные из строки на экран.
Разделить текст из нескольких предложений, введенный пользователем, на отдельные строки.
В тексте из нескольких предложений, введенном пользователем, определить какой из знаков препинания встречается чаще.
Определить, сколько во введенной пользователем строке слов, состоящих более, чем из шести букв.
В тексте из нескольких предложений, введенном пользователем, определить самое длинное предложение.
В строке, введенной пользователем, заменить все гласные буквы независимо от регистра на их ASCII код.
В строке, введенной пользователем, определить количество гласных букв. Вывести все гласные из строки на экран.
Из строки, введенной пользователем, удалить все удвоенные согласные.
В тексте из нескольких предложений, введенном пользователем, определить самое короткое предложение.

 

5.3 Контрольные вопросы

5.3.1 Что представляет собой строка?

5.3.2 Как объявляются строковые переменные?

5.3.3 Назовите основные особенности строк.

5.3.4 Как можно определить длину инициализированной строковой переменной?

5.3.5 Как осуществляется ввод строк?

5.3.6 Приведите пример ввода строки фиксированной длины с использованием библиотеки <stdio.h>.

5.3.7 Какие функции предлагаются для вывода строк?

5.3.8 Приведите пример построчного ввода символьных данных.

5.3.9 Приведите пример посимвольного ввода строки.

5.3.10 Какие основные функции предусмотрены для работы со строками?

 

 





Последнее изменение этой страницы: 2017-01-25; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.234.255.5 (0.009 с.)