注:未交代的均为c++语言
1.格式化输出
例:输出时间格式的时候需要以(hh:mm:ss)作为结果,但是利用cout<<hh<<":"<<mm<<":"<<ss<<endl;输出时,可能遇见hh/mm/ss小于10的情况,即输出格式变成了(h:m:s),利用如下处理办法:
int a=1;
cout.setf(ios::right);//设置输出格式,向右对齐
cout.fill('0');//用字符0作为填充
cout.width(2);//输出宽度为2个字符
cout<<a<<endl;
2.四舍五入
double b;
cin>>b;
int a=int(b+0.5);
cout<<a;
3.输出若干位有效数字
在cout输出流中直接接上setprecision(x),其中的x表示要保留的有效数字位数。但是注意,需要头文件#include<iomanip>
例如:
double PI=3.1415926;
cout<<setprecision(5)<<PI<<endl;
则将会输出3.1416.
4.输出若干位小数位
只需在上述的有效数位操作函数前面再添加一个setiosflags(ios::fixed)即可,但是注意,需要头文件#include<iomanip>
double PI=3.1415926;
cout<<setiosflags(ios::fixed)<<setprecision(5)<<PI<<endl;
4.1 在c中输出指定位数的小数位:
在c的float类型中,会默认输出6位有效数字,当输出时指定为%.2f,则将修改为默认输出两位有效数字 ;double类型的类似,使用%.2lf指定输出位数
5.循环输出一个数组,每一个数据之间用一个空格符间隔,但是要保证输出的首尾没有多余的空格
利用三元操作符A?B:C,选取循环的长度作为A,每次减一,B为空格符,当循环到最后一次时,输出C结束,其中C为‘\0’
例如:cout<<(--count?:" ":'\0');
6.在c语言中,输出八进制或十六进制时,默认不会有开头位0,这时可以通过如下方式实现:%#o(八进制),%#x(十六进制)