Определить количество слов, у которых первый и последний символы совпадают между собой - C (СИ)
Формулировка задачи:
Решить эту задачу используя простейшие структуры данных
Определить количество слов, у которых первый и последний симво-лы совпадают между собой.
Решение задачи: «Определить количество слов, у которых первый и последний символы совпадают между собой»
textual
Листинг программы
#include <stdio.h> #include <string.h> #define N 255 #define DELIM " ,.\t\n" char end_simb(char *s) { while(*s++); s-=2; return *s; } int main(void) { char str[N]="abba gdfg hhj nfffnd appa"; char *p=NULL; int c=0; for (p = strtok(str, DELIM); p!=NULL; p = strtok(NULL, DELIM)) { if(*p==end_simb(p))c+=1; } printf("%d\n", c); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами и строками
- Определение константы N, которая задает максимально возможное количество символов в строке
- Определение строки-разделителя DELIM, которая разделяет строку на слова
- Функция end_simb, которая принимает строку и возвращает последний символ этой строки
- В функции main создается строка str, которая содержит тестовый набор данных
- Инициализация переменной p с значением NULL
- Инициализация переменной c с значением 0
- Использование функции strtok для разделения строки на слова и сохранения их в переменную p
- Проверка каждого слова на условие (*p==end_simb(p)), если условие выполняется, то переменная c увеличивается на 1
- После окончания цикла, выводится значение переменной c
- Возвращение 0, что означает успешное выполнение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д