Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Примеры. d = ‘A’; printf(“%-4c”,d); результат А___

  1. Вывод символа

% [ - ] [ ширина] c

d = ‘A’; printf(“%-4c”,d); результат А___

 

  1. Вывод строки

% [ - ] [ ширина] [. точность]s

s1=’123456789’; printf(“%9.3s”,s1); результат ______123

здесь параметр точность определяет число печатаемых символов строки.

 

  1. Вывод целого числа со знаком

% [ - ] [±][ ширина] [l] d

printf(“ I = %5ld ”,i);

Если + то значение будет снабжаться знаком, даже если оно положительное, l в случае типа Long

 

  1. Вывод целого числа без знака

% [ - ] [#][ ширина] [l] {u, o, x, X}

# определяет вывод начального нуля в восьмеричном формате и 0х или 0Х в шеснадцатиричном.

U – означает вывод в 10-й системе счисления без знака

О - означает вывод в 8-й системе счисления

Х, х - означает вывод в 16-й системе счисления (х тогда a-f, X тогда A-F)

 

  1. Вывод чисел с плавающей точкой

% [ - ] [±] [#][ ширина] [. Точность] {f, e, E, g, G}

# значения выводятся с завершающими не имеющими значения нулями

точность – количество цифр после точки

Если ширина и точность не заданы, то вывод осуществляется со стандартными значениями этих параметров.

F – вывод значения в виде целой и дробной частей.[-]d…d.d…d

e – вывод в формате [-]d.d…de[-]dd

E - вывод в формате [-]d.d…dE[-]dd

g – вывод осуществляется соответственно с f или e в соответствии с наиболее короткой формой.

G – вывод осуществляется соответственно с f или E в соответствии с наиболее короткой формой.

 

Вывод сообщений с помощью функции PUTS()

 

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

Puts(“Hello, word!”); эквивалентна printf (“Hello, word! ”);

 

 

Форматный ввод - функция SCANF()

 

Для вывода из стандартного файла используется функция scanf(). Функция имеет вид:

Int scanf(форматная строка, список указателей аргументов)

Форматная строка имеет ту же структуру, что и форматная строка функции printf. За форматной строкой через запятые перечисляются указатели на переменные, значения которых будут вводиться в стандартный файл. Форматная строка может содержать пустые символы, литерные и спецификации преобразования формата. К пустым относятся: пробел, знаки табуляции, символы перевода формата и конца строки. Пустые символы не учитываются и не оказывают влияния. Пробелы во входном потоке данных (т.е. во вводимых записях) воспринимаются как разделители отдельных полей. Если форматная строка содержит литерные символы, не входящие в число пустых и не %(спецификации) то при вводе предполагается, что соответствующие символы должны появляться во входном потоке данных в соответствующих позициях. Спецификации преобразования формата имеют следующий общий вид:

% [*] [ширина ] [ дополнительные признаки] символ преобразования

* обозначает пропуск при вводе поля, определенного данной спецификацией, т.е. информация введенная по соответствующей спецификации не будет присваиваться никакой переменной. Ширина определяет максимальное число символов вводимых по данной спецификации. В число спецификаций входят:

  1. %[*][ширина]c – осуществляет ввод символов, ширина определяет количество символов, которые будут прочитаны из входного потока и будут присвоены соответствующему массиву символов. Если ширина опущена, то вводится 1 символ. Можно вводить и пустые символы.
  2. %[*][ширина]s – для ввода строк символов. Ширина задает максимальную длину вводимой строки. Строки во входном потоке должны разделяться пустыми символами.
  3. %[*][ширина][l, h][d,u,o,x] – предназначены для ввода целых чисел.

l – ввод целого типа long

h - ввод целого типа short

по умолчанию предполагается ввод типа int

d – ввод десятичного целого

u – ввод беззнакового целого

o – ввод восьмеричного целого без знака

x – ввод целого без знака в 16- ой системе счисления.

  1. %[*][ширина][l][f,e,g] – ввод значений с плавающей запятой. L задает ввод типа double, если не задан, то тип float. F, e, g – синонимы, т.е. предназначены для ввода значения с плавующей точкой.

 

Спецификация ввода по образцу.

%[*][ширина][образец]

Образец определяет множество символов, из которых может состоять вводимая строка. Он задается строкой символов, заключенной в [ ].

[a, b, c, d] или [a – z] или [a – f, 0 - 9]

если на первом месте образца стоит «^» вводятся все символы из входного потока кроме перечисленных [^a-d].

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

Функция scanf возвращает количество прочитанных и присвоенных полей значений.

 

<== предыдущая лекция | следующая лекция ==>
Спецификации. Управляющие последовательности | Массивы числовых данных
Поделиться с друзьями:


Дата добавления: 2014-01-14; Просмотров: 414; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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