Написать функцию выделения слов из переданной ей строки - C (СИ)

Узнай цену своей работы

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

Изучаем указатели. Дано задание: Написать функцию выделения слов из переданной ей строки, содержащие заданный символ, и возвращающую их. Помогите написать программу на си, буду очень благодарен.

Решение задачи: «Написать функцию выделения слов из переданной ей строки»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
 
void find_ch(char* str, char* ch) 
{
        if(strstr(str, ch))
                printf("%s\n", str);
}
 
int main(void)
{
        char arr[255];
        char znak[] = "щ"; //заданный символ
        while(fscanf(stdin, "%s%*c", arr) != EOF)
                find_ch(arr, znak);
        return 0;
}

Объяснение кода листинга программы

В этом коде:

  1. В функции find_ch() используется функция strstr() для поиска первого вхождения подстроки в переданной строке. Если подстрока найдена, то в консоль выводится сама строка.
  2. В функции main() создается массив arr типа char на 255 символов.**
  3. Затем в main() программа запрашивает ввод строки с помощью fscanf(). Введенная строка сохраняется в массиве arr.**
  4. После этого вызывается функция find_ch(), которая ищет в этой строке подстроку щ. Если подстрока найдена, то сама строка выводится в консоль.**
  5. Процесс чтения строк и поиска подстрок продолжается до тех пор, пока не будет достигнут конец файла (EOF).
  6. В конце программы возвращается 0, что означает успешное завершение работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы