Язык Си в примерах/ASCII коды символов

Материал из Викиучебника

Перейти к: навигация, поиск
Язык Си в примерах

  1. Компиляция программ
  2. Простейшая программа «Hello World»
  3. Учимся складывать
  4. Максимум
  5. Таблица умножения
  6. ASCII коды символов
  7. Верхний регистр
  8. Скобочки
  9. Факториал
  10. Степень числа
  11. Треугольник Паскаля
  12. Корень уравнения
  13. Система счисления
  14. Сортировка
  15. Библиотека complex
  16. Сортировка на основе qsort
  17. RPN калькулятор
  18. RPN калькулятор на Bison
  19. Простая грамматика
  20. Задача «Расчёт сопротивления схемы»
  21. Простая реализация конечного автомата
  22. Использование аргументов командной строки
  23. Чтение и печать без использования stdio

В языке C есть тип char для символов. Каждому символу сопоставлено число от 0 до 255, которое называется ASCII-кодом символа. Например, символу 'A' соответствует число 65. Символами можно оперировать, как числами и, наоборот, переменные типа int можно интепретировать как символы (сравнивать с символами или печатать как символы).

Для того, чтобы считывать один символ есть функция getchar из библиотеки stdio.


Логика приведенной ниже программы следующая. Считывается символ и печатается в двух форматах: как символ (формат "%c") и как число (формат "%d"). Это делается до тех пор, пока символ (а точнее его ASCII код) не будет равен 27, то есть пока не будет нажата клавиша ESC.

Выражение ch != 27 означает логическое ch \ne \; 27 .

#include <stdio.h>
int main ()
{
   int ch;
   do { 
      ch = getchar();
       printf ("Вы нажали %c. ASCII код = %d\n", ch, ch);
    } while (ch != 27);
}

[править] Задания

  1. Напишите программу, которая печатает все символы и их ASCII-коды.
  2. Попробуйте напечатать как символ число больше 255. Что получается?

[править] Приложение

  • Расширенная кодовая страница ASCII (см. также asciitable.com):

Ascii Table-nocolor.svg