После ввода пробела заменить следующую строчную букву на заглавную и наоборот - C (СИ)

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

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

Здравствуйте! Первый семестр изучаю си, который дается мне очень тяжело (первый язык программирования). Бьюсь пол недели над кодом который после получения в тексте 'пробел' будет менять в следующем слове строчную букву на заглавную или заглавную на строчную. Пример: Disease is the retribution Of Outraged Nature Desease Is The Retribution of outraged nature как можно такое написать не используя готовые функции? Спасибо

Решение задачи: «После ввода пробела заменить следующую строчную букву на заглавную и наоборот»

textual
Листинг программы
#include <stdio.h>
 
int main()
{
    int c, prc;
    
    while ((c = getchar()) != EOF) {
        if (prc == ' ') {
            if (c >= 'a' && c <= 'z')
                putchar(c - 32);
            if (c >= 'A' && c <= 'Z')
                putchar(c + 32);
        }
        else
            putchar(c);
        prc = c;
    }
 
    return 0;
}

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

  1. Вводится символ 'c' при помощи функции getchar()
  2. Если символ 'c' равен пробелу ' ' то выполняется следующий блок кода
  3. Проверяется, является ли символ 'c' строчной буквой от 'a' до 'z' (включительно)
  4. Если это так, то из 'c' вычитается 32 и результат выводится на экран при помощи функции putchar()
  5. Проверяется, является ли символ 'c' заглавной буквой от 'A' до 'Z' (включительно)
  6. Если это так, то из 'c' прибавляется 32 и результат выводится на экран при помощи функции putchar()
  7. Если символ 'c' не равен пробелу ' ', то он выводится на экран без изменений при помощи функции putchar()
  8. Значение символа 'c' присваивается переменной 'prc'
  9. Цикл while продолжается, пока не будет достигнут конец файла (EOF)
  10. В конце программы возвращается 0, что означает успешное выполнение

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


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

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

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