Родитель
55409af4b2
Сommit
7f4b849e2c
@ -0,0 +1,35 @@
|
||||
#include <cstdio> // Äëÿ fgets()
|
||||
#include <cstring> // Äëÿ strspn() è strcspn()
|
||||
#include <iostream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
int main() {
|
||||
const size_t MAX_SIZE = 256; // Ìàêñèìàëüíûé ðàçìåð ñòðîêè
|
||||
char text[MAX_SIZE]; // Ìàññèâ äëÿ ââîäà ñòðîêè
|
||||
const char* separators = " \r\n,.!?:;()-"; // Ðàçäåëèòåëè ñëîâ
|
||||
|
||||
// Ââîä ñòðîêè ñ êîíñîëè
|
||||
cout << "Enter a string: ";
|
||||
fgets(text, MAX_SIZE, stdin);
|
||||
|
||||
const char* start = text; // Óêàçàòåëü íà íà÷àëî ñòðîêè
|
||||
|
||||
// Öèêë äëÿ îáðàáîòêè ñòðîêè
|
||||
while (true) {
|
||||
const size_t separator_count = strspn(start, separators); // Êîë-âî ðàçäåëèòåëåé â íà÷àëå
|
||||
start += separator_count; // Ïðîïóñê ðàçäåëèòåëåé
|
||||
|
||||
if (start[0] == '\0') { // Åñëè äîñòèãíóò êîíåö ñòðîêè, çàâåðøèòü
|
||||
break;
|
||||
}
|
||||
|
||||
const size_t word_length = strcspn(start, separators); // Äëèíà ñëåäóþùåãî ñëîâà
|
||||
cout.write(start, word_length); // Ïå÷àòü ñëîâà
|
||||
cout << '\n'; // Ïåðåâîä ñòðîêè
|
||||
|
||||
start += word_length; // Ïåðåìåñòèòü óêàçàòåëü íà ñëåäóþùèé áëîê
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
Загрузка…
Ссылка в новой задаче