| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | // setf2.cpp -- using setf() with 2 arguments to control formatting#include <iostream>#include <cmath>int main(){    using namespace std;   // use left justification, show the plus sign, show trailing    // zeros, with a precision of 3    cout.setf(ios_base::left, ios_base::adjustfield);    cout.setf(ios_base::showpos);    cout.setf(ios_base::showpoint);    cout.precision(3);    // use e-notation and save old format setting    ios_base::fmtflags old = cout.setf(ios_base::scientific,        ios_base::floatfield);    cout << "Left Justification:\n";    long n;    for (n = 1; n <= 41; n+= 10)    {        cout.width(4);        cout << n << "|";        cout.width(12);        cout << sqrt(double(n)) << "|\n";    }    // change to internal justification    cout.setf(ios_base::internal, ios_base::adjustfield);    // restore default floating-point display style    cout.setf(old, ios_base::floatfield);    cout << "Internal Justification:\n";    for (n = 1; n <= 41; n+= 10)    {        cout.width(4);        cout << n << "|";        cout.width(12);        cout << sqrt(double(n)) << "|\n";    }    // use right justification, fixed notation    cout.setf(ios_base::right, ios_base::adjustfield);    cout.setf(ios_base::fixed, ios_base::floatfield);    cout << "Right Justification:\n";    for (n = 1; n <= 41; n+= 10)    {        cout.width(4);        cout << n << "|";        cout.width(12);        cout << sqrt(double(n)) << "|\n";    }	// std::cin.get();    return 0; }
 |