Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Monteg626
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 5
1

Программа, удаляющее последнее слово, выводит первое слово. Что не так?

14.05.2017, 15:42. Просмотров 350. Ответов 7
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 #include <iostream>
using namespace std;
int main()
{
char s[100];
int i = 0;
cout << "stroka: ";
cin >> s;
for(i = strlen(s)-1;i >= 0;i--)
{
      if(s[i] ==' ') i++;
}
cout << s << endl;
system("pause");
return 0;
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2017, 15:42
Ответы с готовыми решениями:

Определить, содержит ли последнее слово строки букву, с которой начинается первое слово
2.) В динамической памяти размещена строка символов. Определить, содержит ли последнее слово строки...

Верно ли, что первое слово начинается на ту же букву, на которую заканчивается второе слово?
Даны два слова. Верно ли, что первое слово начинается на ту же букву, на которую заканчивается...

Даны два слова.Верно ли, что первое слово начинается на ту же букву, на которую заканчивается второе слово
Даны два слова.Верно ли, что первое слово начинается на ту же букву, на которую заканчивается...

Поменять в предложении первое и последнее слово
Вам дана строка SS, состоящая только из пробелов и строчных латинских букв. Строка представляет из...

7
nonedark2008
1306 / 967 / 298
Регистрация: 28.07.2012
Сообщений: 2,683
14.05.2017, 15:51 2
Цитата Сообщение от Monteg626 Посмотреть сообщение
cin >> s;
Вводит только одно слово.
Используй, скажем, функцию getline.
0
Monteg626
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 5
14.05.2017, 16:02  [ТС] 3
заменил 8 строку на, но теперь ничего не выводит, я не шибко понимаю в строках
C++
1
cin.getline(s, 100, '.');
Добавлено через 1 минуту
заменил 8 строку на, но теперь ничего не выводит, я не шибко понимаю в строках
C++
1
cin.getline(s, 100, '.');
0
nonedark2008
1306 / 967 / 298
Регистрация: 28.07.2012
Сообщений: 2,683
14.05.2017, 16:07 4
Monteg626, оставь просто
C++
1
cin.getline(s, 100);
Строкой будет считаться все, до первого нажатия Enter.
0
Monteg626
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 5
14.05.2017, 16:20  [ТС] 5
Цитата Сообщение от nonedark2008 Посмотреть сообщение
1
cin.getline(s, 100)
ну так ничего не выводит нажимая Enter, вообще ничего
0
nonedark2008
1306 / 967 / 298
Регистрация: 28.07.2012
Сообщений: 2,683
14.05.2017, 17:17 6
Цитата Сообщение от Monteg626 Посмотреть сообщение
ну так ничего не выводит нажимая Enter, вообще ничего
Покажи весь исправленный код. И лучше еще пример ввода/вывода.
0
Monteg626
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 5
14.05.2017, 18:06  [ТС] 7
Цитата Сообщение от nonedark2008 Посмотреть сообщение
Покажи весь исправленный код. И лучше еще пример ввода/вывода.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
using namespace std;
int main()
{
    char s[100];
    int i = 0;
    cout << "stroka: ";
    cin.getline(s, 100);
    for (i = strlen(s) - 1; i >= 0; i--)
    {
        if (s[i] == ' ') i++;
    }
    cout << s << endl;
    system("pause");
    return 0;
}
скриншот ввода/вывода не смог кинуть, ошибку выдало
0
nonedark2008
1306 / 967 / 298
Регистрация: 28.07.2012
Сообщений: 2,683
14.05.2017, 20:16 8
Monteg626, ах , ну да.
Намек:
Цитата Сообщение от Monteg626 Посмотреть сообщение
i--
Цитата Сообщение от Monteg626 Посмотреть сообщение
i++
А цикл сам по себе вообще ничего не делает.
0
14.05.2017, 20:16
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2017, 20:16

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

Поменять местами первое и последнее слово
Помогите решить задачу, используя строки. В заданном тексте (слова разделены пробелами) поменять...

Даны два слова.Верно ли,что первое слово начинается на ту же букву,на которую заканчивается второе слово (работа с символами строки)
2)Даны два слова.Верно ли,что первое слово начинается на ту же букву,на которую заканчивается...

Поменять местами первое и последнее слово в строке
задача: поменять местами первое и последнее слово в строке. проблема некорректно определяется...

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


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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