Справочная система C guide



Содержание


%g 1234.57

Замечание. Чтобы вывести символ %, необходимо в форматной строке задать два символа %%. Пример

printf("%5.2f%%", 99.44);

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

99.44%

13. ФОРМАТИРОВАННЫЙ ВВОД

Для описания функций форматированного ввода scanf, fscanf, sscanf используются следующие метаобоэначения:

1t> Пробел (символ ^ на самом деле не печатается!) { \ Используется только один из перечисленных элементов. [] Используется только один или не используется ни одного

из перечисленных элементов. Замечание. Для использования функций, описанных в этом разделе, в программу необходимо включить команду препроцессора

#mclude <stdio.h>

Функции scanf, fscanf и sscanf могут иметь переменное число аргументов. Число и типы аргументов должны соответствовать спецификациям преобразования в форматной строке.

Форматированный ввод 75

scanf - ввести данные из стандартного файла ввода stdin в соответствии с форматной строкой format, присваивая значения переменным, заданным указателями pointer. Определение: mt scanf (format [.pointer]...) char * format;

fscanf - ввести данные из потока stream в соответствии с форматной строкой format

Определение: mt fscanf (stream, format [.pointer]...) FILE •stream, char *format;

sscanf - читать данные из строки s в соответствии с форматной строкой format. Определение: int sscanf (s, format [.pointer]...)

char *s, *format, Пр имеры

Входной поток содержит символы:

12.45 1048.73 АЕ405271 438 Вызов функции.

float x; char id [8+Г]; int n;

scanf("%f%*f%8[A-ZO-9]%d", &x,id, &n);

Переменной х присваивается значение 12.45, символы 1048.73 пропускаются, переменной id присваивается строка символов "АЕ405271", переменной n - целое значение 438.

Входной поток содержит символы:

25 54.32Е-01- monday Вызов функции:

int 1; float x, char name [50];

scanf ("%d%f%s", &i, &x, name);

Переменной i присваивается значение 25, переменной х - значение 5.432, переменной name - строка "monday"




Содержание  Назад  Вперед