Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Консольный ввод-вывод.doc
Скачиваний:
4
Добавлен:
24.11.2018
Размер:
79.87 Кб
Скачать

Консольный ввод-вывод

В языке Си отсутствуют специальные операторы ввода-вывода. Их заменяют стандартные функции, собранные в "библиотечный файл" stdio.h. Программа, содержащая обращения к функциям ввода-вывода, должна содержать строку подключения этого файла: #include <stdio.h>.

Рассмотрим шесть наиболее распространенных функций ввода информации с клавиатуры и ее вывода на экран (консольный ввод-вывод):

getchar и putchar (для ввода-вывода символа),

gets и puts (для ввода-вывода строки),

scanf и printf (для форматированного ввода-вывода ), и функцию

fflush очистки буфера stdin.

Функция getchar

Предназначена для ввода символа, не имеет параметров, возвращает целое число - код введенного символа. Обращение имеет вид: getchar(). Выполняя эту функцию, программа приостанавливает свою работу и ждет от пользователя ввода символа и/или нажатия клавиши Enter.

Функция putchar

Предназначена для вывода символа. Имеет один параметр типа int (код выводимого символа) или char. Обращение имеет вид: putchar(i), где i – выражение, определяющее символ. После вывода символа курсор не переходит к началу новой строки.

Пример 1.

/* Ввод-вывод символа */

#include <stdio.h>

main()

{

int ch; // Код вводимого символа

puts("Введите любой символ"); // Вывод строки - посказки

ch=getchar(); // Ввод символа и присваивание его кода переменной ch

puts("Вы ввели символ"); // Вывод строки - сообщения

putchar(ch); // Вывод символа, определенного кодом ch

printf("\n"); // Перевод курсора к началу новой строки

putchar('A'); // Вывод символа 'A', заданного константой

printf("\n");

putchar(65); // Вывод символа 'A', заданного кодом символа

fflush(stdin); // Очистка буфера ввода

getchar(); // Ввод символа и/или нажатия Enter для организации задержки

// смены окна Output на окно редактора текста

return(0);

}

Видим, что функция getchar() может использоваться в операторе присваивания. В этом случае код введенного символа присваивается переменной типа int (в примере - переменной ch).

Функции putchar('A') и putchar(65) выводят один и тот же символ 'A', символьной константой и кодом символа (65).

После выполнения данной программы окно Output будет иметь вид:

Введите любой символ

1

Вы ввели символ

1

A

A

_

Функция gets

Предназначена для ввода строки. Имеет один параметр, задающий адрес области памяти, в которую помещаются символы вводимой строки. В языке Си имя переменной, имеющей строковый тип, является этим адресом. Обращение имеет вид: gets(name)), где name – переменная строкового типа - имя вводимой строки. Выполняя эту функцию, программа приостанавливает свою работу и ждет от пользователя ввода последовательности символов и/или нажатия клавиши Enter.