ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.09.2024
Просмотров: 24
Скачиваний: 0
3. Введення і виведення даних
У мові Сі++ немає вбудованих засобів введення і виводу – він здійснюється за допомогою функцій, типів і об'єктів, які знаходяться в стандартних бібліотеках. Існує два основні способи: функції успадковані з Сі і об'єкти Сі++.
Для ввода/вивода даних в стилі Сі використовуються функції, які описуються в бібліотечному файлі stdio.h.
-
printf ( рядок формату, список аргументів);
рядок формату - рядок символів, ув'язнених в лапки, яка показує, як мають бути надруковані аргументи. Наприклад:
printf ( “Значення числа Пі рівне %f\n”, pi);
Рядок формату може містити
-
символи друковані текстуально;
-
специфікації перетворення;
-
символи, що управляють.
Кожному аргументу відповідає своя специфікація перетворення:
%d %i - десяткове ціле число;
%f - число з плаваючою крапкою;
%e,%E – число з плаваючою крапкою в експоненціальній формі;
%u – десяткове число в беззнаковій формі;
%з - символ;
%s - рядок.
У рядок формату також можуть входити символи, що управляють:
\n - символ, що управляє, новий рядок;
\t – табуляція;
\а – звуковий сигнал і ін.
Також в рядку формату можуть використовуватися модифікатори формату, які управляють шириною поля, що відводиться для розміщення значення, що виводиться. Модифікатори – це числа, які вказують мінімальну кількість позицій для виведення значення і кількість позицій ля виведення дробової частини числа:
%[-]m[.p]C, де
-
- задає вирівнювання по лівому краю
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, а також відповідні операції
-
<< - операція запису даних в потік;
-
>> - операція читання даних з потоку.
Наприклад:
#include <iostream.h>;
. . . . . . . . .
cout << “\nВведите кількість елементів: ”;
cin >> n;
Контрольні питання
-
Що таке рядок формату? Що містить рядок формату функції printf? Що містить рядок формату функції scanf?
-
Що таке специфікація перетворення? Навести приклади специфікацій перетворення для різних типів даних.
-
Що буде виведене функцией printf("\nСреднее арифметичне послідовності чисел рівно: %10.5f \nКоличество парних елементів послідовності равно%10.5d ",S/n,k);
-
Як записати виведення результатів з питання 3 за допомогою операції << ?
-
Як виконати введення змінних х і в, де x типа long int, а в типа double за допомогою функції scanf? За допомогою операції >> ?