русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Далее приведен пример программы для ввода значений различных типов из файла.


Дата добавления: 2013-12-23; просмотров: 609; Нарушение авторских прав


Примеры допустимых типов форматов ввода приведены в таблице ниже.

В квадратных скобках указаны необязательные элементы формата.

Тип - это символ типа формата вводимого значения.

H - short;

I или L - long или double; .

W - width - ширина - десятичное целое, определяет максимальный, размер поля вводимого значения;

F|N - определяет тип адресации аргумента (Far, Near);

h|l|L - определяет уточнение типа аргумента вводимого значения, то есть вариант типа:

Тип формата Интерпретация значения, выделенного при вводе Тип аргумента –указатель на
d десятичное целое int
D “ — ” long
o восьмеричное целое int
O “ — ” long
x шестнадцатеричное целое int
X “ — ” long
i десятичное, восьмеричное или шестнадцатеричное целое int
u десятичное целое без знака unassigned int
U “ — ” unassigned long
e, E число с плавающей точкой float / double
f, F число с фиксированной точкой float / double
c символ, в т. ч. пробел char
s строка char
n чтение из потока не производится int

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

Спецификаторамd,i,o,u,хможет предшествовать:

-h- если аргументы - указатели на типshort int;

-l- если аргументы - указатели на типlong int/

Спецификатораме,E,f,Fможет предшествовать:

-I- если аргументы - указатели на типdouble (а неfloat)



-L- если аргументы - указатели на типlongdouble.

Значение с плавающей точкой, вводимое по форматаме,E,f,Fво входном потоке, может содержать число с фиксированной точкой и (необязательно) -экспоненту - символеилиЕ, за которым следует порядок. Например, допусти­мы:123 1.23 1.23е-2 1.23Е-2

С помощью форматасвводится один очередной символ, в том числе про­бельный. Чтобы ввести строку изwсимволов, включающую и пробелы, и сим­вол конца строки (\n), надо использовать формат%wc. Если при вводе строки форматом%wcвведен символ перехода на следующую строку, то при выводе этой строки, он вызовет переход на следующую строку, на которую и будет продолжен вывод.

- С помощью форматаsвводится строка символов до очередного пробела; после последнего символа введенной строки помещается символ\0- конца строки. Символы перехода на следующую строку (\n) считываются наравне с другими символами. Для чтения следующего непробельного символа можно воспользоваться форматом%1s.

С помощью формата%*wsможно пропустить очередное поле сwнепробельными символами; а с помощью формата%*10сбудут пропущены очередные 10 любых, в том числе пробельных, символов входного потока. Для таких форматов аргументы не требуются. Примеры форматов:

scanf ( “%d%ld%f%c%12c%s%*c”, &I, &k, &b, str1, str2 ) ;

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

Если в строке форматов стоит символ, который не является символом допустимого типа формата, то этот символ и все последующие символы до следующего символа % интерпретируются как последовательность символов, ко­торые игнорируются при их появлении во входном потоке. Если их нет во входном потоке, результат ввода неопределен. Например, чтобы задать игнори­рование символов входного потокаа =, можно использовать следующий вызов функцииscanf:

scanf( "а = %d”, &а ) ;

Во входном потоке может быть: а = 123.

При выполнении ввода символы а = из входного потока игнорируются, а в качестве значения переменной а введется значение 123.

(пример старой версии)

# include <stdio.h>;

FILE *f;



<== предыдущая лекция | следующая лекция ==>
Заданной длины поля вводимого значения, если она определена в формате. | Функции для форматного вывода данных


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.