- •Коллоквиум на тему «моя любимая функция»
- •функция printf() - появилась в языке
- •Формат, указываемый при обращении к функции printf(), выглядит следующим образом:
- •Формат определяется следующим образом:
- •Преобразование - задает тип соответствующего аргумента. Программист сам несет
- •Характеристики, связанные с размером выводимого значения:
- •Пример применения функции printf
Коллоквиум на тему «моя любимая функция»
Титульный слайд: ФИО Группа
Название доклада
Далее:
Несколько слайдов с описанием функции Текст программы Пользовательский экран
Листинги файлов – если их создавали
Пример – функция printf()
функция printf() - появилась в языке
программирования C для организации форматного вывода информации.
Целое семейство функций форматного вывода, описанные в stdio.h
■cprintf - в текстовое окно на экран
■fprintf - в файл
■printf - в stdin
■sprintf - в строку
■vfprintf – в файл (специальные аргументы)
■vprintf - в stdin (специальные аргументы)
■vsprintf - в строку (специальные аргументы)
Эквивалентно fprintf(stdin, );
Формат, указываемый при обращении к функции printf(), выглядит следующим образом:
printf(Управл_строка,Аргумент1,Аргумент2,...);
где 1) Аргумент1, Аргумент2,... - это печатаемые параметры, которые могут быть переменными, константами или выражениями, вычисляемыми перед выводом на печать; 2) Управляющая_строка - строка символов,
показывающая, как должны быть напечатаны параметры.
Помимо обычного текста управляющая_строка содержит команды преобразования, которые начинаются с символа "%", за которым следуют символы и цифры, задающие правила вывода аргументов (Аргумент1, Аргумент2,...).
Формат определяется следующим образом:
%[флаги][ширина][.точность][F|N|h|l|L] преобраз.
!!! конструкции в квадратных скобках могут отсутствовать, а символ "|" свидетельствует о том, что здесь может использоваться одна из перечисленных возможностей !!!
% - встроенные команды преобразования должны начинаться со знака процента. Чтобы вставить в выводимый текст сам знак процента, его нужно указать дважды: %%
Ширина задает размер поля вывода, в котором выводимый текст дополняется символами пробела или нулями.
Точность, которая должна начинаться с точки, обозначает точность числа - для чисел с плавающей точкой, или минимальное число цифр - для целых чисел.
Флаги задают правила выравнивания, знаки "+" и "-",
десятичную точку, "хвостовые" нули и префиксы для восьмеричных и шестнадцатеричных значений.
Флаг Описание Выводимый текст выравнивается по левому краю. Все оставшееся справа
-пустое пространство заполняется пробелами. По умолчанию текст выравнивается по правому краю.
+Числовые значения предваряются знаком плюса или минуса. Обычно только отрицательные значения предваряются знаком минуса.
Перед положительными числовыми значениями выводится пробел, а перед
'' отрицательными - знак минуса. Этот режим действует по умолчанию, (пробел)поэтому не употребляйте этот флажок вместе с флажком +. Не заключайте
символ пробела в апострофы!
В случае использования символа преобразования x или X ненулевые аргументы предваряются префиксом 0x или 0X соответственно. В случае
символа преобразования o результат предваряется цифрой 0. Если используется преобразование e, E или f, в выводимом тексте,
#изображающем число, будет присутствовать десятичная точка (обычно она выводится только для дробных значений). Если используется преобразование g или G, в выводимом тексте, изображающем число, будет присутствовать десятичная точка и хвостовые нули не подавляются (как это имеет место по умолчанию).
Преобразование - задает тип соответствующего аргумента. Программист сам несет
ответственность за правильность типа этого аргумента. причем в каждой отдельной
команде можно использовать только один символ. Символ Описание
% |
Выводится символ процента. |
|
|
||
c |
Выводится символ, заданный соответствующим аргументом. |
||||
d |
Выводится десятичное число со знаком. |
|
|||
e |
тип double в экспоненциальной форме, например: 1.045e+12. |
||||
E |
Аналогично |
предыдущему, |
но в результат буде |
помещена прописная |
|
(заглавная) буква E. |
|
|
|||
|
|
|
|||
f |
тип double в десятичном формате, например: 1234.56. |
||||
g |
тип double, автоматически выбирается либо f, либо e, в зависимости от |
||||
того, что дает более точный результат в поле вывода. |
|||||
|
|||||
G |
Аналогично предыдущему, но в случае е будет Е |
|
|||
i |
То же, что и d - выводится десятичное число со знаком. |
||||
|
Значение аргумента интерпретируется как указатель на переменную типа |
||||
n |
int, в которой функция printf() запоминает число символов, записанных до |
||||
этого на устройство вывода (stdout). Это преобразование не отправляет на |
|||||
|
|||||
|
устройство вывода никаких символов. |
|
|||
o |
Выводится беззнаковое восьмеричное число. |
|
|||
p |
Выводится значение указателя. |
|
|||
s |
Выводится содержимое завершающейся нулем строки. |
||||
u |
Выводится беззнаковое десятичное число. |
|
|||
|
Выводится |
беззнаковое |
шестнадцатеричное |
число, используются |
Характеристики, связанные с размером выводимого значения:
F - дальний (far-) указатель; N - ближний (near-) указатель; h - значение типа short int;
l - значение типа long;
L - значение типа long double.
Требуемый тип данных выбирается соответствующим символом преобразования