Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!ПР10.doc
Скачиваний:
4
Добавлен:
14.04.2019
Размер:
85.5 Кб
Скачать

Задание №10

Написать программу, которая вводит с клавиатуры символьную строку длиной не более 80 символов, рассматриваемую как произвольное абстрактное предложение, состоящее из слов. Слова отделяются друг от друга как минимум одним символом пробела. Строка должна быть введена посимвольно с использованием функции getchar(). Из нее построить новую строку предложения, в которой слова имеют обратный порядок следования символов по сравнению с исходной строкой. Результат распечатать на экране.

#include <iostream>

#include <string>

#include <algorithm>

using namespace std;

int main()

{

char myString[81];

fill(myString,myString+81,' ');

char ch;

for( int i=0; i<80; ++i )

{

ch = getchar();

if ( ch == '\n' )

break;

myString[i] = ch;

}

string new_string;

for( int i=0; i<81; ++i )

{

if ( myString[i] != ' ' )

new_string += myString[i];

else

{

reverse( new_string.begin(), new_string.end() );

cout << new_string << " ";

new_string = "";

}

}

//если за последним символом не было пробела, то последнее слово всё ещё надо вывести

if ( new_string.size() )

{

reverse( new_string.begin(), new_string.end() );

cout << new_string << endl;

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]