Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

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






Глава 6. Ввод – вывод данных






 

Ввод–вывод – это передача данных между переменными программы(ОП) и внешней памятью(ВП).

В Си предусмотрен только форматный обмен.

< stdio.h> – файл прототипа.

Ввод:

 

 

Вывод:

Буфер имеет конечный размер и считывание из него происходит только после нажатия клавиши < Enter>.

Формат основных функций

{scanf | printf}(< управляющая строка> [, < список_данных> ]);

 

< управляющая строка>: = “[< произвольный текст> ][< спецификации> ]”

< список_данных>: = < имя_переменной> [, < имя_переменной> [, …] ]

 

Элементы списка данных scanf() – адреса переменных, значения которых задаются, поэтому необходимо использовать операцию & (нахождение адреса).

Возвращаемые значения: printf ()– число выводимых символов (байтов), scanf() – число введенных скалярных значений.

6.1 Управляющая строка

Содержит спецификации для функций ввода-вывода.

Формат ОДНОЙ спецификации

% [ < флаги> ] [W] [. D] [l] < тип>

% [признаки] [ширина_поля] [.точность ] [модификатор] с_n.

 

Флаги для printf (для scanf не используются):

– данное прижимается к левой границе поля вывода;

+ число ВСЕГДА со знаком (актуально для положительных данных, в которых по умолчанию знак опускают, отрицательные всегда изображаются со знаком).

 

W – размер поля данного в символах (байтах).

D – обычно характеризует точность представления значения при выводе, ПРИ ВВОДЕ НЕ ИСПОЛЬЗУЕТСЯ (количество цифр, которые необходимо вывести справа от десятичной точки для типов float и double).

Модификаторы:

l – модификатор " длинных" (long для целых, double для чисел с плавающей точкой), указывает, что соответствующий элемент имеет тип long.

h – модификатор “коротких”, указывает, что соответствующий элемент имеет тип short int.

6.1.1 Спецификация d (целые десятичные цифры)

 

ВВОД Формат спецификации

% [W] [l] d

W – максимальное число считываемых символов.

l – модификатор для long.

Пример.

Внешнее представление Спецификация Значение в памяти
165< пробел> d  
+165< Enter> d  
  2 d  
  1 d  
  l d  
– 431921 4 l d – 431
+ 431921< пробел> 10 l d  

 

ВЫВОД Формат спецификации

% [< флаги> ] [W] [.D] [l] d

D – минимальное число выводимых символов.

Пример.

Значение в памяти Спецификация Внешнее представление
  d  
  + d + 2475
  < пробел> d < пробел> 2475
– 2475 d –2475
– 2475 +d –2475
–2475 < пробел> d –2475
–2475 3d –2475
  10d _ _ _ _ _ _ 2475
  +10d _ _ _ _ _+2475
  –10d 2475_ _ _ _ _ _
  –+10d +2475_ _ _ _ _
  10.5d – – – – – 02475
–24 10.5d _ _ _ _ – 00012
–24 .5d –00024
  5.0d _ _ _ _ 3
–478126 10ld _ _ _–478126
–478126 –10ld –478126_ _ _
  +–10ld +478126_ _ _

 

6.1.2. Спецификация f (вещественные числа с плавающей точкой)

 

ВВОД Формат спецификации

% [W] [l] f

l – для double.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.005 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал