Замена букв в строке на заглавные - C (СИ) (71368)

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

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

Помогите пожалуйста. Надо написать программу, которая по введённой строке создаёт новую и заменяет все символы на символы в верхнем регистре, а для следующих символовделает такую замену: • 'a', 'A' → '4' • 'b', 'B' → '8' • 'e', 'E' → '3' • 'i', 'I' → '1' • 'o', 'O' → '0' • 's', 'S' → '5' Для замены использовать таблицы. Пример: This stuff really works TH15 5TUFF R34LLY W0RK5

Решение задачи: «Замена букв в строке на заглавные»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
#include <ctype.h>
 
const char* TABLE[] = { "ABEIOS", "483105" };
 
int main(void) {
    char s[] = "This stuff really works", * ptr, * found;
    
    for ( ptr = s; *ptr; ++ptr ) {
        *ptr = toupper(*ptr);
        if ( found = strchr(TABLE[0], *ptr) )
            *ptr = TABLE[1][found - TABLE[0]];
    }
    
    printf("%s\n", s);
    
    return 0;
}

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

  1. Подключение необходимых библиотек для работы со строками и символами.
  2. Объявление таблицы соответствий для замены букв на заглавные.
  3. Объявление и инициализация строки, которую необходимо преобразовать.
  4. Объявление указателя на текущий символ строки и указателя на найденный символ в таблице.
  5. Проход по каждому символу строки и замена его на заглавный символ.
  6. Если символ найден в таблице, то заменяем его на соответствующий символ из второго элемента таблицы.
  7. Вывод преобразованной строки.
  8. Возврат 0, означающий успешный исход программы.

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


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

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

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