Лабораторная работа №15
Обработка строк
Решение нулевого варианта
Задача. Составить программу, которая во вводим с клавиатуры слове меняет местами первую и последнюю буквы. Новое слово необходимо вывести на экран.
Входные данные: строка s.
Выходные данные: преобразованная строка s.
Для работы со строками в C++ существует специальный класс string. Для его работы в начале программы необходимо подключить заголовочный файл string: #include <string>.
Для работы со строкой воспользуемся функцией size, которая возвращает число элементов в строке.
В переменной целого типа len будем хранить число элементов в строке.
Перепишем строку s в строку s1. Так как символы в строке нумеруются с 0, то нулевому символу строки s присвоим значение (len - 1) - го символа строки s1, а (len - 1) -му символу строки присвоим нулевой символ строки s1.
Остается только вывести строку s на экран.
Текст программы:
#include "stdafx.h"
#include <string>
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{string s,s1;
cin>>s;
int len;
len=s.size();
s1=s;
s[0]=s1[len-1];
s[len-1]=s1[0];
cout<<s;
system("pause");
return 0;}
Задания для самостоятельного выполнения:
- Составить программу, которая во вводимой с клавиатуры строке удаляет n элементов, начиная с k-го элемента. Где n и k — вводимые с клавиатуры числа целого типа. Преобразованную строку вывести на экран.
- Ввести с клавиатуры строку. После каждого символа ‘a’ вставить пробел. Преобразованную строку вывести на экран.
- Даны две строки. Проверить, совпадают ли они, и вывести соответствующее сообщение.
- Удалить из строки все символы ‘+’. Преобразованную строку вывести на экран.
- Ввести с клавиатуры. Подсчитать, сколько раз среди символов данной строки встречается символ ‘+’ и сколько раз символ ‘—’.
- Составить программу, которая во вводимой с клавиатуры строке заменяет в ней все восклицательные знаки точками.
- Выяснить, верно ли, что среди символов строки имеются все буквы, входящие в слово ‘father’.
- Дана строка s. Удалить из данной строки последовательность символов букв вида ‘no’.
- Дана строка s, среди символов которой есть восклицательный знак. Сформировать новую строку, содержащую все символы до первого появления восклицательного знака в исходной строке.
- Дана строка s. Преобразовать строку, удалив из нее все запятые.
- Даны две строки. Распечатать строку, в которой содержится большее количество символов.
- Дана строка s. Подсчитать количество символов ‘x’ в строке.
- Проверить, встречается ли в строке s подстрока s1.
- Дана строка s. Преобразовать строку, заменив все символы ‘=’ на символ ‘!’
- Составить программу, которая во вводимой с клавиатуры строке заменяет в ней каждую точку многоточием (т.е. тремя точками).