Выводить каждый введенный символ и его десятичный код ASCII - C (СИ)

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

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

Есть задача Напишите программу, которая читает входные данные до тех пор, пока не встретится символ #. Программа должна выводить каждый введенный символ и его десятичный код ASCII. Каждая строка вывода должна содержать восемь пар “символ-код". Вот до чего "допер"
#include <stdio.h>
 
int main(void) 
{
    char ch;
    int i,j;
    printf("Введите текст или набор символов.\n");
    printf("Мы выведем каждый символ и соответствующий ему ASCII код.\n");
    printf("Для завершения ввода введите #\n");
    
    while ((ch = getchar()) != '#')
    {
        for (i = 0; i <= 7; i++)
        {
            if (ch == ' ')
                ch = getchar();
            if (ch == '#')
                break;
            j = ch;
            printf("%c - %d;  ", j, j);
            ch = getchar();
        }
        printf("\n");
    }
    return 0;
Можете свои варианты накатать, а я допру где "затупил"

Решение задачи: «Выводить каждый введенный символ и его десятичный код ASCII»

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{
    char ch;
    
    int cnt = 0;
    while ((ch = getchar()) != '#')
    {
        printf("[%c - %3d] ", ch, ch);
        cnt = (cnt + 1) % 8;
        if (cnt == 0) printf("\n");
    }        
    
    return 0;
}

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

Вывод каждого введенного символа и его десятичного кода ASCII:

  1. Включаем стандартную библиотеку
  2. Объявляем переменную типа char с именем ch для хранения вводимого символа
  3. Объявляем переменную типа int с именем cnt для подсчета количества выводимых символов
  4. Запускаем цикл while, который будет выполняться до тех пор, пока не будет введен символ '#'
  5. Внутри цикла, с помощью функции getchar(), считываем введенный символ и присваиваем его переменной ch
  6. Выводим на экран символ и его десятичный код ASCII, используя функцию printf()
  7. Увеличиваем значение переменной cnt на 1, используя операцию сложения и оператор присваивания с остатком от деления на 8
  8. Если значение переменной cnt равно 0, выводим символ новой строки с помощью функции printf()
  9. После выхода из цикла while, программа завершается и возвращает 0, используя оператор return

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


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

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

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