Найти слова, начинающиеся с заглавной буквы - C (СИ)

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

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

Всем доброго времени суток! Я вновь обращаюсь на ваш форум за поддержкой) Задание можно прочитать в заголовке, а вот собственно, и сам код:
#include<stdio.h>
#include<string.h>
void main()
{      
char M[100];
int i,z;
i=0;
printf("\n Vvedite predlojenie:");
scanf("%s",M);
while(M[i]!='.')                       
      {
      if(M[i]>='A'&&M[i]<='Z')     
     {
     while(M[i]!=' ')
        {
        printf("%c", M[i]);
        i++;
        }
     printf("\n");
     }
      }
}
Как я понял, прога зацикливается и не выдает слова, написанные с заглавной буквы Не могли бы вы подсказать, где я напортачил? Заранее спасибо.

Решение задачи: «Найти слова, начинающиеся с заглавной буквы»

textual
Листинг программы
int main()
{
char M[100];
int i;
i=0;
printf("\n Vvedite predlojenie:");
fgets(M, 100, stdin);
while(M[i] && M[i]!='.')
      {
       if(M[i]>='A'&&M[i]<='Z')
         {
         while(M[i] && M[i]!=' ')
            {
            printf("%c", M[i]);
            i++;
            }
         printf("\n");
         }
       i++;
      }
}

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

В этом коде задача состоит в том, чтобы найти слова, начинающиеся с заглавной буквы. Вот список действий, которые выполняются в коде:

  1. Вводится предложение с помощью функции fgets().
  2. Переменная i инициализируется нулем.
  3. Используя цикл while, код проходит по предложению, проверяя каждый символ.
  4. Если текущий символ является заглавной буквой (больше или равен 'A' и меньше 'Z'), то код начинает выделять слова, начинающиеся с этой буквы.
  5. Код продолжает выделять слова, пока не встретит пробел или конец строки.
  6. Каждое выделенное слово выводится на экран с помощью функции printf().
  7. После завершения выделения слов, код выводит символ новой строки.
  8. Переменная i увеличивается на единицу после каждой итерации цикла while, чтобы перейти к следующему символу в предложении. Список переменных и их значений:
    • M - массив символов, в который вводится предложение. Значение этого массива устанавливается с помощью функции fgets().
    • i - переменная, используемая для индексации символов в массиве M. Начальное значение i равно нулю.
    • Значение переменной i увеличивается на единицу после каждой итерации цикла while.

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


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

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

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