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

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

Вопросы для отчета

Каким образом задаются строки?

Как можно осуществлять ввод строк?

Как можно осуществлять вывод строк?

Опишите основные функции со строками.

Краткие теоретические сведения

Символьная константа – это символ (единственный), заключенный в одиночные кавычки, как, например, 'Х'. Значением символьной константы является численное значение этого символа в машинном представлении набора символов. Все символы упорядочены в соответствии с принятым в ПК коде (например ASCII). При этом порядковый номер символов называется кодом (например, код латинского символа 'А ' равен 65; символа '3' равен 51). Для символьных данных не определены никакие арифметические операции, но они могут сравниваться по своим кодам, участвовать в чтении, печати, операторах присваивания.

Строка – это последовательность (массив) символов, заключенная в двойные кавычки, заканчивающаяся нуль-символом (\0 – символ с кодом равным нолю). По положению нуль-символа определяется фактическая длина строки. Например, длина строки char text[ ] = "Моя программа!" равна 14 байт (включая пробел).

Для форматного ввода и вывода символьных констант используется спецификатор , строк – %s и специальные функции: getchar(),gets() – ввод и putchar(), puts() –вывод.

Библиотека C содержит функции обработки строк, прототипы которых определяются в заголовочном файле string.h. Например:

strlen(str) – определяет длину строки str;

strcat(str1,str2) – сцепление строк в порядке их перечисления;

strncat(str1,str2,kol) – приписывает kol символов строки str2 к строке str1;

strcmp(str1,str2) – сравнивает две строки str1 и str2 и возвращает 0, если они одинаковы; результат отрицателен, если str1<str2 и положителен, если str1>str2;

strncmp(str1, str2, kol) – сравниваются части строк str1 и str2 из kol символов. Результат равен 0, если они одинаковы.

strcpy(str1,str2) – копирует строку str2 в строку str1.

Познакомьтесь с другими символьными функциями: https://valera.asf.ru/cpp/scpp/cppd_string.htm


Задача 1. Вывести введенную с клавиатуры строку в обратном порядке.

Исправьте текст программы таким образом, чтобы в обратном порядке выводились только символы с четными номерами в строке.

Задача 2. Проверить является ли данная строка палиндромом.

Добавьте текст программы вычислением количества равных пар символов.

Задача 3. Дана строка, содержащая полное имя файла, то есть имя диска, список каталогов (путь), собственно имя и расширение. Выделить из этой строки имя файла.

Добавьте в текст программы выведение корневого каталога.

Задача 4. Дана строка, состоящая из слов, разделенных пробелами. Определить количество слов, которые начинаются с буквы «а».

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: