ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.09.2024

Просмотров: 24

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

3. Введення і виведення даних

У мові Сі++ немає вбудованих засобів введення і виводу – він здійснюється за допомогою функцій, типів і об'єктів, які знаходяться в стандартних бібліотеках. Існує два основні способи: функції успадковані з Сі і об'єкти Сі++.

Для ввода/вивода даних в стилі Сі використовуються функції, які описуються в бібліотечному файлі stdio.h.

  1. printf ( рядок формату, список аргументів);

рядок формату - рядок символів, ув'язнених в лапки, яка показує, як мають бути надруковані аргументи. Наприклад:

printf ( “Значення числа Пі рівне %f\n”, pi);

Рядок формату може містити

  1. символи друковані текстуально;

  2. специфікації перетворення;

  3. символи, що управляють.

Кожному аргументу відповідає своя специфікація перетворення:

%d %i - десяткове ціле число;

%f - число з плаваючою крапкою;

%e,%E – число з плаваючою крапкою в експоненціальній формі;

%u – десяткове число в беззнаковій формі;

%з - символ;

%s - рядок.

У рядок формату також можуть входити символи, що управляють:

\n - символ, що управляє, новий рядок;

\t – табуляція;

\а – звуковий сигнал і ін.

Також в рядку формату можуть використовуватися модифікатори формату, які управляють шириною поля, що відводиться для розміщення значення, що виводиться. Модифікатори – це числа, які вказують мінімальну кількість позицій для виведення значення і кількість позицій ля виведення дробової частини числа:

%[-]m[.p]C, де

    1. - задає вирівнювання по лівому краю

m – мінімальна ширина поля

p – кількість цифр після коми для чисел з плаваючою крапкою і мінімальна кількість цифр, що виводяться, для цілих чисел (якщо цифр в числі менше, ніж значення р, то виводяться початкові нулі)

С- специфікація формату виводу.

Приклад

printf("\nСпецификации формата:\n%10.5d - целое,\n%10.5f - з плаваючою точкой\

\n%10.5e – в експоненціальній форме\n%10s - строка",10,10.0,10.0,"10");

Буде виведено:

Специфікації формату:

00010 – ціле

10.00000 – з плаваючою крапкою

1.00000е+001 - в експоненціальній формі

10 – рядок.


2) scanf ( рядок формату, список аргументів);

Як аргументи використовуються адреси змінних. Наприклад:

scanf(“ %d%f ”, &x,&y);

При використанні бібліотеки класів Си++ використовується бібліотечний файл iostream.h, у якому визначені стандартні потоки введення даних від клавіатури cin і виведення даних на екран дисплея cout, а також відповідні операції

  1. << - операція запису даних в потік;

  2. >> - операція читання даних з потоку.

Наприклад:

#include <iostream.h>;

. . . . . . . . .

cout << “\nВведите кількість елементів: ”;

cin >> n;

Контрольні питання

  1. Що таке рядок формату? Що містить рядок формату функції printf? Що містить рядок формату функції scanf?

  2. Що таке специфікація перетворення? Навести приклади специфікацій перетворення для різних типів даних.

  3. Що буде виведене функцией printf("\nСреднее арифметичне послідовності чисел рівно: %10.5f \nКоличество парних елементів послідовності равно%10.5d ",S/n,k);

  4. Як записати виведення результатів з питання 3 за допомогою операції << ?

  5. Як виконати введення змінних х і в, де x типа long int, а в типа double за допомогою функції scanf? За допомогою операції >> ?

11