С клавиатуры вводится строка символов, представляющая собой предложение со знаками препинания (точка, запятая, восклицательный знак). Вывести на экран предложение, получающееся из исходного изменением порядка букв на обратный в каждом слове с сохранением знаков препинания. Вот код:
void reverse(char s[], int i, int j) //переворот слова
{
if (s[i] == '.' || s[i] == ',' || s[i] == '!' || s[i] == ' ')
{
for (int j = 0; j < i; j++)
{
i--;
if (s[j] == s[i])
break;
if (j >= i)
break;
swap(s[j], s[i]);
}
}
}
int searchBegWord(char s[], int lenght, int pos) //поиск начала слова
{
for (int i = pos; i < lenght; i++)
{
if (s[i] != '.' && s[i] != ',' && s[i] != '!' && s[i] != ' ')
{
int beg = i;
return beg;
}
}
}
void reverseWord(char s[], int lenght, int i, int beg) //переворот предлож.
{
for (int i = 0; i < lenght; i++)
{
if (s[i] == '.' || s[i] == ',' || s[i] == '!' || s[i] == ' ')
{
reverseWord(s, lenght, searchBegWord(s,lenght,0) , i );
}
}
}
Нельзя использовать классы. У меня почему-то переворачивает только первое слово и всё. Не получается перевернуть предложение. В чем ошибка? Заранее спасибо!
Необходимо зайти на сайт oddsportalcom, чтобы в дальнейшем парсить его с помощью jsoup
Как включить механизм шифрования памяти в jvm? Для предотвращения Dll инъекций и замены переменных используя CheatEngine (как в denuvo)