Определить количество слов, оканчивающихся на букву "р" - C (СИ)

Формулировка задачи:

Нужно решить задачу: С клавиатуры вводится предложение. Написать программу, определяющую количество слов, оканчивающихся на букву "р" (русская). Собственно алгоритм понятен: счиваем строку и в цикле проверяем текущий символ и следующий, если они соотвественно равны "р" и " ", то увеличиваем счётчик. Проблема работы со строками на чистом Си(!). Как нужно правильно объявлять строку как массив символов, как её считывать, и как обращаться к символам в строке. Спасибо!

Код к задаче: «Определить количество слов, оканчивающихся на букву "р" - C (СИ)»

textual
#include <stdio.h>
#include <string.h>
 
#define DELIM " \t\n,."
 
int main(void)
{
   char s[] = "Hellop world worp, dasd";
   char *p;
   size_t cnt = 0;
   
   for ( p = strtok (s, DELIM); p ; p = strtok(NULL, DELIM) )
      if ( p[strlen(p) - 1] == 'p' )
         ++cnt;
   printf ("%d\n", cnt);
}
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

12   голосов, оценка 4.083 из 5


СДЕЛАЙТЕ РЕПОСТ