人们都喜欢漂亮的事物,所以格式的美观是能够吸引人去学习。
刚开始学C++,控制台程序都是一片片黑,如何吸引人呢?
我们还记得我们在纸上列竖式。
324
+ 1697
----------
如何用c++也输出这样美观的格式呢?
这就需要引用一个新的头文件#include <iomanip>
同时引出一个新函数setw,来确定占位的长度。
例如
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
cout<<setw(10)<<324<<endl;
cout<<“+”<<setw(9)<<1697<<endl;
}
那么我们来练习一下,输出
数 平方 立方
1 1 1
2 4 8
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int i=0;
cout<<setw(6)<<"数"<<setw(6)<<"平方"<<setw(6)<<"立方"<<endl;
++i;
cout<<setw(6)<<i<<setw(6)<<i*i<<setw(6)<<i*i*i<<endl;
++i;
cout<<setw(6)<<i<<setw(6)<<i*i<<setw(6)<<i*i*i<<endl;
++i;
cout<<setw(6)<<i<<setw(6)<<i*i<<setw(6)<<i*i*i<<endl;
++i;
cout<<setw(6)<<i<<setw(6)<<i*i<<setw(6)<<i*i*i<<endl;
return 0;
}
除了这种格式美化,iomanip库还有很多实用的功能。例如取小数位数,例如进制转换。
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
double a=3.1415926535897;
cout<<fixed<<setprecision(6) <<a<<endl;
cout<<setprecision(6) <<a<<endl;
}
大家自行体会一下,fixed是固定小数,如果不加fixed是包括整数的位数。
?