Книга по С

## Стандарные подпрограммы (функции Printf, Scanf)

Сейчас мы познакомимся с важнейшими понятиями и особенностями языка Си на нескольких примерах. При этом мы сконцентрируем наше внимание на таких понятиях, как константа и переменные, арифметические действия над ними, основные управляющие структуры, функции и простейший ввод-выод.

К наиболее интересным и важным функциям языка относится printf. Она предназначена для форматного вывода данных. Например, чтобы вывести некоторое сообщение на экран дисплея, достаточно использовать вызов функции:

printf ("Интересное сообщение \n");

Одним из механизмов взаимодействия являются параметры. Список параметров (аргументов) идет вслед за именем функции в круглых скобках. В данном случае аргументом служит строковая константа - любая последовательность символов, в кавычках. Комбинация " \n " означает переход на новую строку. Первый пример можно заменить вот на такую строчку:

printf ("Интересное сообщение "); printf(" \n ");

- результат будет точно таким же, как и в первом случае!

Первым аргументом служит строка форматов, а вторым, если они есть, - выводимые объекты. Строка форматов может включать обычные символы, которые начинаются со знака %, за ним следует символ преобразования. Каждая спецификация преобразования соответствует одному из аргументов, которые следуют за форматной строкой.Буква d в спецификации преобразования указывает, что значение аргумента должно быть напечатано как десятичное целое число. Из других символов отметим : c - для вывода отдельного символа; s - для печати символьной строки; x и o - для вывода шестнадцатиричных и восьмиричных чисел соответственно; f - для вывода чисел с плавающей точкой. В следующем примере

printf(" %c = %d \n",g,g);

значение переменной g выводиться как символ алфавита, а после знака равенства - как числовое значение, соответствующее внутреннему (машинному) коду этого символа. Перед символом преобразования может стоять, явно указывающий количество позиций в выводимой строке, отведенных для элемента вывода.

printf(" %c = %5d \n",g,g);

< Дальше >