Как, используя toupper(), перевести текст в заглавный? - C (СИ)

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

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

Хорошо, как используя toupper() перевести текст в заглавный?

Решение задачи: «Как, используя toupper(), перевести текст в заглавный?»

textual
Листинг программы
#include <stdio.h>
#include <ctype.h>
 
char * str_toupper(char * s) {
    if ( *s ) {
        *s = toupper(*s);
        str_toupper(s + 1);
    }
    
    return s;
}
 
int main(void) {
    char buf[BUFSIZ];
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' )
        printf("UPPERCASE: %s", str_toupper(buf));
    
    return 0;
}

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

  1. Включаем необходимые заголовочные файлы и .
  2. Определяем функцию str_toupper(), которая принимает указатель на начало строки и переворачивает строку в верхний регистр.
  3. Если первый символ строки не равен нулю, то мы применяем функцию toupper() к этому символу и записываем его обратно в строку.
  4. Затем рекурсивно вызываем функцию str_toupper() для следующего симвома в строке.
  5. Если первый символ строки равен нулю, то мы завершаем рекурсию и возвращаем указатель на начало строки.
  6. В функции main() мы считываем строку с помощью fgets() в буфер buf, размер которого определен как BUFSIZ.
  7. Мы продолжаем считывать строки до тех пор, пока пользователь не введет пустую строку или не завершит ввод.
  8. Для каждой введенной строки мы вызываем функцию str_toupper(), передавая ей указатель на начало строки.
  9. Результат функции str_toupper() выводится на экран с помощью функции printf().
  10. В конце функции main() возвращается 0, что означает успешный конец работы программы.

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

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

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