Нужно найти количество слов в каждой строке - C (СИ)
Формулировка задачи:
Помогите решить, пожалуйста.Максимальное число символов в строке – 80. Во втором задании максимальное число строк – 6. Истинное число строк определяется пользователем. Нужно найти количество слов в каждой строке.
Решение задачи: «Нужно найти количество слов в каждой строке»
textual
Листинг программы
- #include <stdio.h>
- #include <string.h>
- #define SIZE 80
- #define DELIM " ,.\t\n"
- int main()
- {
- char str[SIZE], *word;
- int counter = 0, n, i;
- printf("Enter number of lines: ");
- scanf("%d", &n);
- getchar();
- for (i = 0; i < n; i++)
- {
- printf("Enter line: ");
- fgets(str, SIZE, stdin);
- counter = 0;
- for (word = strtok(str, DELIM); word; word = strtok(NULL, DELIM))
- counter++;
- printf("Words: %d\n", counter);
- }
- return 0;
- }
Объяснение кода листинга программы
- Подключение необходимых библиотек: stdio.h и string.h
- Объявление констант: SIZE (80) - размер строки в символах, DELIM (
, .\t\n
) - разделитель слов в строке - Объявление переменных: char str[SIZE] - строка для ввода, *word - указатель на слово в строке, int counter - счетчик слов, n - количество строк, i - номер текущей строки
- Сбор данных: с помощью scanf() пользователь вводит количество строк, затем с помощью fgets() вводит строки
- Обработка каждой строки: с помощью цикла for перебираются все строки, внутри которого происходит обработка каждой строки с помощью функции strtok(). Эта функция разбивает строку на слова и сохраняет указатель на каждое слово. Каждое слово увеличивает счетчик words.
- Вывод результата: с помощью printf() выводится количество слов в каждой строке.
- Конец программы: return 0
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д