IPB
ЛогинПароль:

> Строки, :) help!!!
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Серёга

Репутация: -  0  +


Помогите пожалуйста решить такую задачку, что-то никак не соображу!
Код
В пpоизвольном тексте найти и отпечатать все слова, заканчивающиеся буквой r.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






#include <conio.h> // для getch()
#include <stdio.h>
#include <string.h>

int main() {

char s[] = "this is the test for acid_burn: star, force";

// это - разделители: слова в строке могут разделяться пробелами, двоеточиями,
// точками и запятыми... Можешь добавить еще чего-нибудь, если нужно...
char *delimiters = " :,.";


char *result = NULL; // это - простой указатель на строку, инициализированный NULL-ом

// получаем первое слово строки с помощью библиотечной функции strtok:
// первый параметр = строке, которую разбиваем на слова
result = strtok(s, delimiters);

// следующий цикл будет выполняться до тех, пор, пока в строке еще остались слова,
// то есть, пока result не равен NULL (как только он будет NULL - выходим из цикла)
while(result) {
// здесь в result хранится указатель на очередное слово,
// проверяем последний символ этого слова (не забываем ,что в С символы в строке
// индексируются с 0), и если он == 'r' выводим слово на печать
if(result[strlen(result) - 1] == 'r') printf("%s ", result);

// попытка получить следующее слово в заданной строке.
// Особенность функции strtok - в том, что ей после того, как первое слово уже найдено
// не надо указывать саму строку, нужно первым параметром передавать NULL, тогда
// эта функция будет работать с той же строкой, что и при первом вызове...
result = strtok(NULL, delimiters);
}

// Добавляем ожидание нажатия на кнопку...
getch();

return 0; // и выходим из программы
}
Должно работать и для С++, и для чистого С...

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 26.04.2024 8:18
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name