Нужно написать программу, которая подсчитывает и выводит число букв в самом длинном слове - C (СИ)

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

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

#include <stdio.h>
 
int main()
{
    int c;
    int i;
 
    i = 0;
 
    while ((c = getchar()) != EOF) {
        if (c == ' ' || c == '\t')
            ++i;
        else if (c != ' ' || c != '\t') {
            if (i != 0){
                putchar(' ');
            }
            putchar(c);
            i = 0;
        }
    }
    return 0;
}
Вот программа, которую я сдал, дополнительное задание к ней такое: написать программу, которая подсчитывает и выводит число букв в самом длинном слове

Решение задачи: «Нужно написать программу, которая подсчитывает и выводит число букв в самом длинном слове»

textual
Листинг программы
#include <stdio.h>
 
int main()
{
  int c;
  int cur = 0;  // текущее кол-во букв
  int max = 0;  // максимальное кол-во букв
 
  while ((c = getchar()) != EOF) {
    if (c == ' ' || c == '\t' || c == '\n') {
      if (cur > max)
        max = cur;
      cur = 0;
    }
    else {
      cur++;
    }
  }
 
  printf("Max length: %d\n", max);
  
  return 0;
}

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

В этом коде:

  1. В первой строке подключается стандартная библиотека для ввода-вывода .
  2. Затем определена функция main(), в которой будет выполняться программа.
  3. Внутри функции main() определены три переменные: c, cur и max. c — это переменная типа int, которая будет использоваться для получения символов из стандартного ввода (клавиатуры). cur — это переменная типа int, которая используется для подсчета количества букв в текущем слове. max — это переменная типа int, которая используется для хранения максимального количества букв в слове. Значение переменной max изначально равно 0.
  4. Затем в цикле while с условием (c = getchar()) != EOF происходит получение символов из стандартного ввода (клавиатуры) и выполнение следующих действий: — Если полученный символ является пробелом, табуляцией или переносом строки (c == ' ' || c == '\t' || c == '\n'), то выполняются следующие действия: — Если текущее количество букв (cur) больше максимального (max), то max присваивается значение cur. — Значение cur сбрасывается в 0. — Если полученный символ не является пробелом, табуляцией или переносом строки (c != ' ' && c != '\t' && c != '\n'), то выполняется следующее действие: — Значение cur увеличивается на 1.
  5. После выхода из цикла while программа выводит на экран сообщение с максимальным количеством букв в слове: Max length: %d\n, max.
  6. Функция main() возвращает 0, что означает успешное выполнение программы.

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


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

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

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