Форматний ввід/вивід у мові С/С++
ФУНКЦІЇ ВВОДУ/ВИВОДУ ТА МАНІПУЛЯТОРИ МОВИ С++
А ось як виглядає
програма вводу/виводу з використанням бібліотеки класів С++:
Приклад 2.
# include <iostream.h>
void main()
{ int i;
cout<< “Введіть
ціле число\n”;
//об’єкт для вводу
з клавіатури і >>розміщення у потік виводу
cin>> i;
cout<< “Ви
ввели число”<< i <<”дякую!”;
}
Для форматного виводу
у С++ використовуються маніпулятори, для використання яких до програми потрібно
підключити заголовний файл <iomanip.h>:
setw(int) –
встановлює максимальну ширину поля виводу чисел та рядків (не символів);
setprecision(int)
– встановлює максимальну кількість цифр дробової частини
для дійсних чисел з фіксованою крапкою;
setiosflags(ios::showpoint
| ios::fixed) – вивід дійсних чисел з фіксованою крапкою;
setiosflags(ios::left)
або setiosflags(ios::right) – вирівнювання по лівому
або правому полю;
endl – при виводі включає у потік символ нового рядка, еквівалентний “\n” (його
опис міститься у файлі iostream.h).
Маніпулятори спрямовуються
в потік виводу, аналогічно тому, як це зроблено у прикладі 3:
Приклад 3.
# include<iostream.h>
#include <iomanip.h>
void main()
{float d=52.28679;
float f= 410.0;
cout<< setprecision(3);
cout<<setiosflags(ios::showpoint
| ios::fixed);
cout<<setw(12)<<d<<endl<<setw(12)<<f<<endl;
}
Результат виводу
( - позначає пробіл):
52.287
410.000
У даному прикладі
маніпулятори точності та фіксації крапки спрямовуються у потік виводу одноразово,
тоді як ширину поля виводу необхідно встановлювати для кожного значення.
Немає коментарів:
Дописати коментар