Функции стандартной библиотеки ввода/вывода ( stdio ) — КиберПедия 

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Функции стандартной библиотеки ввода/вывода ( stdio )

2020-05-08 160
Функции стандартной библиотеки ввода/вывода ( stdio ) 0.00 из 5.00 0 оценок
Заказать работу

На рис. 12 приведен перечень функций ввода/вывода символов и строк из стандартной библиотеки ввода/вывода.

 

Прототип Описание функции
int getchar (void) Вводит следующий символ со стандартного устройства ввода и возвращает его в формате целого
char  *gets (char *s) Вводит символы со стандартного устройства ввода в массив s до тех пор, пока не встретит символ новой строки или индикатор конца файла. После этого к массиву добавляется ограничивающий символ NULL.
int putchar (int c) Печать символа, хранящегося в с.
int puts (const char *s) Печать строки s с последующим символом новая строка
int sprintf (char *s, const char *format,...) Эквивалент функции printf за исключением того, что результат вывода запоминается в массиве s, а не отображается на экране
int sscanf (char *s, const char *format,...) Эквивалент функции scanf за исключением того, что ввод осуществляется из массива s, а не с клавиатуры

Рис. 12. Символьные и строковые функции стандартной библиотеки ввода/вывода

Программа, приведенная на рис. 13, использует функции gets и putchar для чтения строки текста со стандартного входного устройства (клавиатуры) и рекурсивно выводит символы строки в обратном порядке. Функция gets читает символы со стандартного входного устройства и передает их своему аргументу — массиву типа char — до тех пор, пока не встретит символ новой строки или индикатор конца файла. Символ NULL ('\0') добавляется в массив после окончания считывания. Функция putchar печатает свой аргумент — символ. Для печати строки текста в обратном порядке программа рис. 13 вызывает рекурсивную функцию reverse. Если первый символ массива, полученный функцией reverse, является нулевым символом '\0', то следует возврат из функции. В противном случае следует вызов reverse, и ее аргумент указывает на адрес «нового» массива, который начинается с элемента s[l]. Когда рекурсивный вызов завершается, функция putchar выводит элемент s[0]. Порядок следования двух операторов в части else структуры if приводит к тому, что функция reverse переходит к граничному символу NULL строки до вывода символа на печать. Как только рекурсивный вызов завершается, символы выводятся в обратном порядке.

/* Применение gets and putchar */

#include <stdio.h>

main ().. {

char sentence[80]; void reverse(char *);

printf("Enter a line of text:\n");

gets (sentence);

printf(" \nThe line printed backwards is:\n");

reverse(sentence);

return 0;

}

void reverse (char *s) {

if (s[0] == '\0')

return;

else

{reverse (&s [1]);

putchar (s [0]);

}}

 

Вывод на экран

Enter a line of text:

Characters and Strings

The line printed backwards is:

sgnirtS dna sretcarahC

Enter a line of text:

able was I ere I saw elba

The line printed backwards is:

able was I ere I saw elba

Рис. 13. Применение gets and putchar

Программа, приведенная на рис. 14, использует функции getchar и puts для чтения символов со стандартного входного устройства в символьный массив sentence и выводит массив символов как строку. Функция getchar читает символ со стандартного входного устройства и возвращает его как целое значение. Функция puts получает в качестве аргумента строку (char *) и выводит ее с последующим символом новой строки (‘\n')

 

/* Применение getchar и puts */

#include <stdio.h>

main ()

{

char c, sentence[80];

int i = 0;

puts ("Enter line of text:");

while ((с = getchar ())!= v\n')

sentence[i++] = c;

sentence [i] = ' \0'; /* вставьте символ NULL в конец строки */

puts("\nThe line entered was:");

puts (sentence);

return 0;

}

 

Вывод на экран

Enter line of text: This is a test.

The line entered was: This is a test.

Рис. 14. Применение getchar and puts

Программа прекращает ввод символов, когда getchar считывает введенный пользователем символ новой строки. В массив sentence добавляется символ NULL, чтобы массив мог восприниматься как строка. Функция puts выводит строку, содержащуюся в sentence.

Программа, приведенная на рис. 15, использует функцию sprintf для печати форматированных данных в массив s — массив символов. Программа вводит значения типа int и float, которые форматируются и выводятся в массив s. Массив s является первым аргументом функции sprintf.

/* Применение sprintf */

#include <stdio.h>

main () {

char s[80];

int x;

float y;

printf("Enter an integer and float:\n");

scanf("%d%f", &x, &y);

sprintf(s, "Integer:%6d\nFloat:%8.2f", x, y);

printf("%s\n%s\n", "The formatted output stored in array s:", s);

return 0; }

 

Вывод на экран

Enter an integer and float:

298 87.375

The formatted output stored in array s:

Integer: 298

Float: 87.38

Рис. 15. Применение sprintf

Программа, приведенная на рис. 16, демонстрирует функцию sscanf для чтения форматированных данных из массива символов s. Программа считывает значения типа int и float из массива s и запоминает величины соответственно в переменных х и у. Величины х и у выводятся на печать. Массив s является первым аргументом функции sscanf.

/* Применение sscanf */

# include < stdio. h >

main () {

char s[] = "31298 87.375";

int x;

float y;

sscanf (s, "%d%f", &x, &y);

printf("%s\n%s%6d\n%s%8.3f\n",

"The values stored in character array s are:", "Integer:", x, "Float:", y);

return 0; }

 

Вывод на экран

The values stored in character array s are:

Integer: 31298

Float: 87.375

Рис. 16. Применение sscanf

 


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

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.008 с.