Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
margarine94
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 4
#1

Строки. Поменять в каждом слове местами первую и последнюю буквы - C++

30.05.2013, 15:08. Просмотров 797. Ответов 2
Метки нет (Все метки)

Дана строка. Группы символов, разделенные пробелами (од- ним или несколькими) и не содержащие пробелов внутри себя, будем называть словами. Поменять в каждом слове ме- стами первую и последнюю буквы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2013, 15:08     Строки. Поменять в каждом слове местами первую и последнюю буквы
Посмотрите здесь:
C++ Поменять в каждом слове местами первую и последнюю буквы.
C++ Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается последовательность разделителей
В каждом слове заданного предложения поменять местами первую букву и последнюю C++
C++ Работа со строками (поменять местами первую и последнюю буквы в слове)
В любом слове изменить местами первую и последнюю буквы C++
Поменять местами первую и последнюю буквы слов C++
C++ Поменять первую и последнюю строки матрицы местами
C++ Поменять в матрице первую и последнюю строки местами
В масиве А поменять местами первую и последнюю ,вторую и предпоследнюю строки и т.д C++
C++ У каждого слова введенной строки поменять местами первую и последнюю букву.
Поменять местами первую и последнюю строки матрицы, которые содержат одинаковые элементы C++
C++ Строки. В каждом чётном по порядку слове удалить все нечётные буквы, а в каждом нечётном слове удалить все чётные буквы.

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rebelition
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 21
30.05.2013, 18:31     Строки. Поменять в каждом слове местами первую и последнюю буквы #2
Получилось немного запутанно, но работает при любых условиях. Даже когда пробелы в конце и/или начале строки.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream>
#include <string>
 
int main()
{
 
    using namespace std;
    string str;
    cout << "Enter the string:  ";
    getline(cin, str);
    int first(0), i(0);
    char buf;
 
    //убираем пробелы спереди и сзади
    int last = str.length()-1;
    while(str[i] == ' ')        //находим первый символ
        first = ++i;
 
    if (str[last] == ' ')      //находим последний символ
        while(str[last] == ' ')
            last--;
 
    for (i; i < last; i++) 
    {
 
        if (str[i] == ' ')
        {
    
            buf = str[first];
            str[first] = str[i-1];
            str[i-1] = buf; 
            first = i+1;
    
        }
        while(str[i] == ' ')     //поиск следуйщего слова после пробелов
            if (i != str.length())
                first = ++i;
                
    }
 
    //меняем местами символы в последнем слове
    buf = str[first];
    str[first] = str[last];
    str[last] = buf;
        
    cout << str;
 
    cin.get();
    return 0;
 
}
eocron
Кактус
66 / 66 / 6
Регистрация: 23.05.2012
Сообщений: 343
30.05.2013, 18:41     Строки. Поменять в каждом слове местами первую и последнюю буквы #3
Еще проще, работает даже по праздникам.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
using namespace std;
int main()
{
    string s;
    char buf;
    while(cin.good())
    {
          cin>>s;
          if(!s.empty())
          {
              buf=s[0];
              s[0] = s[ s.size()-1 ];
              s[ s.size() - 1] = buf;
              cout<<s<<endl;
          }         
    }
}
Yandex
Объявления
30.05.2013, 18:41     Строки. Поменять в каждом слове местами первую и последнюю буквы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru