Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Razdel_1_2007.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
421.96 Кб
Скачать

5. Оператори введення та виведення: з використанням формату, символів, рядків.

Що б там не було, але реальні програми важко уявити без використання операцій введення та виведення. В мові Сі на стандартні потоки введення-виведення (в більшості випадків - клавіатура та монітор) завжди вказують імена stdin та stdout. Обробку цих потоків здійснюють функції, визначені в заголовочному файлі stdio.h.

Розглянемо основні функції введення-виведення.

Читання і запис символів. Найпростішими з консольних функцій введення / виводу є getchar (), яка читає символ з клавіатури, і putchar (), яка відображає символ на екрані. Перша з цих функцій чекає, поки не буде натиснута клавіша, а потім повертає значення цієї клавіші. Крім того, при натисканні клавіші на клавіатурі на екрані дисплея автоматично відображається відповідний символ. Друга ж функція, putchar (), відображає символ на екрані в поточній позиції курсора.

Читання і запис рядків. Серед функцій вводу / виводу на консоль є і більш складні, але й більш потужні: це функції gets () і puts (), які дозволяють зчитувати і відображати рядки символів.

Функція gets () зчитує рядок символів, введений з клавіатури, і записує його в пам'ять за адресою, на який вказує його аргумент. Функція puts () відображає на екрані свій строковий аргумент, після чого курсор переходить на новий рядок.  Функція puts () в разі успішного завершення повертає невід'ємне значення, а в разі помилки - EOF.

Форматний введення / виведення на консоль. Функції printf () і scanf () виконують форматний введення і виведення, тобто вони можуть читати і писати дані в різних форматах. Дані на консоль виводить printf (). А її "доповнення", функція scanf (), навпаки - зчитує дані з клавіатури. Обидві функції можуть працювати з будь-яким вбудованим типом даних, а також з символьними рядками, які завершуються символом кінця рядка ('0').

Ось прототип функції printf ():

Int printf (const char * керуючий_рядок, ...);

Функція printf () повертає число виведених символів або від’ємне значення у разі помилки.

Керуючий_рядок складається з елементів двох видів. Перший з них - це символи, які належить вивести на екран, другий - це специфікатори перетворення, які визначають спосіб виведення стоять за ними аргументів. Кожен такий специфікатор починається зі знака відсотка, за яким слід код формату. Аргументів повинно бути рівно стільки, скільки і специфікаторів, причому специфікатори перетворення і аргументи повинні попарно відповідати один одному в напрямку зліва направо.

Код Формат:% c – Символ; % d - Десяткове ціле зі знаком;% i - Десяткове ціле зі знаком; % f - Десяткове з плаваючою точкою; % s Рядок символів

Функція scanf () - це програма введення загального призначення, що виконує введення з консолі. Вона може читати дані всіх вбудованих типів і автоматично перетворювати числа до відповідного внутрішнього формату, scanf () багато в чому виглядає як зворотна до printf (). Ось прототип функції scanf ():

Int scanf (const char * керуючий_рядок, ...);

Ця функція повертає кількість тих елементів даних, яким було успішно присвоєно значення. У випадку помилки scanf () повертає EOF, керуючий_рядок визначає перетворення зчитаних значень при записі їх змінних, на які вказують елементи списку аргументів.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]