Менять вводимые цифры на знаки которым бы соответствовали значения переменно типа char - C (СИ)

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

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

Я в программировании ещё не силён и знания мои в этой области не велики, но я учусь. Только что для эксперимента переделал одну программу из книги и моя эксперементальная программа должна была менять вводимые цифры на знаки которым бы соответсвовали значения переменно типа char имеющие значение данной цифры (например если ввести 1, то должно было выдать смайлик, если 3, то сердечко, если 11, то 2 смайлика), но вместо того, что мне было надо оно выдает мне то же, что я и ввел.
#include <stdio.h>
 
main()
{
    system("color 0e");
    char c;
    int i;
    while(1)
    {
        i=getchar();
        c=i;
        putchar(c);
    }
}
Если заменить putchar на printf, то ничего не меняется. Где я допустил ошибку? Почему оно не работает?

Решение задачи: «Менять вводимые цифры на знаки которым бы соответствовали значения переменно типа char»

textual
Листинг программы
#include <stdio.h>её
#include <stdlib.h>
 
int main()
{
    system("color 0e");
    while(1)
        putchar(getchar() - '0');
    return 0;
}

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

  1. Включаем необходимые заголовочные файлы и
  2. Запускаем основную функцию программы main()
  3. Выполняем системную команду color 0e, которая меняет цвет фона консоли на зеленый
  4. Запускаем бесконечный цикл while(1)
  5. В каждой итерации цикла выводим на экран символ, полученный с помощью функции getchar(), считанный с клавиатуры, и уменьшенный на значение '0' (чтобы преобразовать цифры в их числовые эквиваленты в формате char)
  6. После завершения цикла выходим из программы с возвращаемым значением 0, что означает успешный конец работы программы

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


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

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

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