АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Функция форматированного вывода

Читайте также:
  1. II.1.1 Разновидности метонимии и ее функция в процессе создания газетной экспрессии
  2. Анализ временного ряда на стационарность (автокорреляционная функция)
  3. АРГУМЕНТ, ФУНКЦИЯ
  4. Артериолы, капилляры, венулы: функция и строение. Органоспецифичность капилляров. Понятие о гистогематическом барьере.
  5. Банк правительства как функция ЦБ
  6. В). каталитическая функция
  7. Волновая функция. Уравнение Шредингера
  8. ВЫДЕЛИТЕЛЬНАЯ (ЭКСКРЕТОРНАЯ) ФУНКЦИЯ СЛЮННЫХ ЖЕЛЕЗ. УЧАСТИЕ СЛЮННЫХ ЖЕЛЕЗ В ПОДДЕРЖАНИИ ГОМЕОСТАЗА ОРГАНИЗМА.
  9. Выделительная функция печени и желудочно-кишечного тракта
  10. ГЛАВА 14 ФУНКЦИЯ СЛЕЗООТВЕДЕНИЯ, МЕТОДЫ ИССЛЕДОВАНИЯ ПРОХОДИМОСТИ СЛЕЗНЫХ ПУТЕЙ. ПАТОЛОГИЯ СЛЕЗНЫХ ОРГАНОВ
  11. ГЛАВА1.7. УРАВНЕНИЯ ЧЕТЫРЕХПОЛЮСНИКА В ГИПЕРБОЛИЧЕСКИХ ФУНКЦИЯХ
  12. ГОЛОС, КАК ФУНКЦИЯ

Достаточно часто для вывода информации из ЭВМ в программах используется функция printf (). Она переводит данные из внутреннего кода в символьное представление и выводит полученные изображения символов результатов на экран дисплея. При этом у программиста имеется возможность форматировать данные, т.е. влиять на их представление на экране дисплея.

Возможность форматирования условно отмечена в самом имени функции с помощью литеры f в конце ее названия (print formatted).

Оператор вызова функции printf () можно представить так:

printf (форматная_строка, список_аргументов);

Форматная строка ограничена двойными кавычками (см. строковые константы, §1.2) и может включать произвольный текст, управляющие символы и спецификации преобразования данных. Список аргументов (с предшествующей запятой) может отсутствовать. Именно такой вариант использован в классической первой программе на языке Си [1, 2]:

Директива #include <stdio.h> включает в текст программы описание (прототип) библиотечной функции printf () (Если удалить из текста программы эту препроцессорную директиву, то появятся сообщения об ошибках и исполнимый код программы не будет создан. Среди параметров функции printf () есть в этом примере только форматная строка (список аргументов отсутствует). В форматной строке два управляющих символа '\n' - "перевод строки". Между ними текст, который выводится на экран дисплея:

Первый символ '\n' обеспечивает вывод этой фразы с начала новой строки. Второй управляющий символ '\n' переведет курсор к началу следующей строки, где и начнется вывод других сообщений (не связанных с программой) на экран дисплея.

Итак, произвольный текст (не спецификации преобразования и не управляющие символы) непосредственно без изменений выводится на экран. Управляющие символы (перевод строки, табуляция и т.д.) позволяют влиять на размещение выводимой информации на экране дисплея.

Спецификации преобразования данных предназначены для управления формой внешнего представления значений аргументов функции printf (). Обобщенный формат спецификации преобразования имеет вид: %флажки ширина_поля. точность модификатор спецификатор

Среди элементов спецификации преобразования обязательными являются только два - символ '% ' и спецификатор.

В задачах вычислительного характера этой главы будем использовать спецификаторы:

d - для целых десятичных чисел (тип int);

u - для целых десятичных чисел без знака (тип unsigned);

f -для вещественных чисел в форме с фиксированной точкой (типы float и double);

е - для вещественных чисел в форме с плавающей точкой (с мантиссой и порядком) - для типов double и float.

В список аргументов функции printf () включают объекты, значения которых должны быть выведены из программы. Это выражения и их частные случаи - переменные и константы. Количество аргументов и их типы должны соответствовать последовательности спецификаций преобразования в форматной строке. Например, если вещественная переменная summa имеет значение 2102.3, то при таком вызове функции

на экран с новой строки будет выведено:

.

После выполнения операторов

на экране получится такая строка:

 

 

Здесь обратите внимание на управляющий символ 't' (табуляция). С его помощью выводимые значения в строке результата отделены друг от друга.

Для вывода числовых значений в спецификации преобразования весьма полезны " ширина_поля" и "точность".

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

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

Пример с теми же переменными:

Результат на экране:

В качестве модификаторов в спецификации преобразования используются символы:

h - для вывода значений типа short int;

l - для вывода значений типа long;

L - для вывода значений типа long double.

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

Хотя в разделе, посвященном символам и строковым константам (§1.2), упоминалось о возможностях записи управляющих последовательностей и эскейп-последовательностей внутри строк, остановимся еще раз на этом вопросе в связи с форматной строкой. При необходимости вывести на экран (на печать) парные кавычки или апострофы их представляют с помощью соответствующих последовательностей: \" или '\', т.е. заменяют парами литер. Обратная косая черта '\' для однократного вывода на экран должна быть дважды включена в форматную строку.

При необходимости вывести символ % его в форматную строку включают дважды: % %.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.006 сек.)