Лабораторная работа №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;}

Задания для самостоятельного выполнения:

  1. Составить программу, которая во вводимой с клавиатуры строке удаляет n элементов, начиная с k-го элемента. Где n и k —  вводимые с клавиатуры числа целого типа. Преобразованную строку вывести на экран.
  2. Ввести с клавиатуры строку. После каждого символа ‘a’ вставить пробел. Преобразованную строку вывести на экран.
  3. Даны две строки. Проверить, совпадают ли они, и вывести соответствующее сообщение.
  4. Удалить из строки все символы ‘+’. Преобразованную строку вывести на экран.
  5. Ввести с клавиатуры. Подсчитать, сколько раз среди символов данной строки встречается символ ‘+’ и сколько раз символ ‘—’.
  6. Составить программу, которая во вводимой с клавиатуры строке заменяет в ней все восклицательные знаки точками.
  7. Выяснить, верно ли, что среди символов строки имеются все буквы, входящие в слово ‘father’.
  8. Дана строка s. Удалить из данной строки последовательность символов букв вида ‘no’.
  9. Дана строка s, среди символов которой есть восклицательный знак. Сформировать новую строку, содержащую все символы до первого появления восклицательного знака в исходной строке.
  10. Дана строка s. Преобразовать строку, удалив из нее все запятые.
  11. Даны две строки. Распечатать строку, в которой содержится большее количество символов.
  12. Дана строка s. Подсчитать количество символов ‘x’ в строке.
  13. Проверить, встречается ли в строке s подстрока s1.
  14. Дана строка s. Преобразовать строку, заменив все символы ‘=’ на символ ‘!’
  15. Составить программу, которая во вводимой с клавиатуры строке заменяет в ней каждую точку многоточием (т.е. тремя точками).
Вернуться к теории