C++中如何使输出对齐

话不多说,直接上码:

#include<iostream>
#include<iomanip>
using namespace std;

int main()
{
    double a=12.112344;
    double b=1.53;
    cout<<setiosflags(ios::fixed)<<setprecision(6)<<setiosflags(ios::left);
    cout<<setw(12)<<a<<setw(12)<<b<<endl;
    cout<<setw(12)<<b<<setw(12)<<a<<endl;
    return 0;
}

//输出结果为:
   12.112344    1.530000  //12.112344前面有3个空格,1.530000前面有4个空格
    1.530000   12.112344  //1.530000前面有4个空格,12.112344前面有3个空格

代码解释如下:
1.setprecision(6):一般和setiosflags(ios::fixed)配合使用,若输出的数为小数,则输出结果保留6位小数,要保留几位小数括号里就输入对应的数字。
2.setiosflags(ios::fixed):固定输出格式,配合setprecision()函数使用,例如:

cout<<setiosflags(ios::fixed)<<setprecision(6);
cout<<5.1<<endl;

输出结果为5.100000。

3.setiosflags()、setprecision()、setw()三个函数的定义包含在iomanip头文件中。
4.setw()函数一般放在要输出的内容前面,表示输出内容占几个格子,不足的用空格补齐。

示例1:
cout<<setw(10)<<5.23;//输出结果为:       5.23
					//5.23的前面有7个空格,输出内容默认右对齐
							
示例2:
cout<<setw(4)<<1.2345<<setw(4)<<1.1;//输出结果为:1.2345 1.1
//首先1.2345的输出格式占4个格子,但是其本身需要占5个格子,所以从格子最左端输出。
//而1.1输出格式占4格,其本身占3个格子,不足的一个格子用空格补齐。

5.setiosflags(ios::left)控制输出左对齐,setiosflags(ios::right)控制输出右对齐。

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页