在学习二维数组时,需要输出这样的二维数组:
1 2 3
4 5 6
如果没有对输出进行控制格式的话,则会变成:
123
456
这并不是我们想要的输出格式。所以我就去搜索资料,学习到了需要加入#include <iomanip>头文件才能实现I/O流的控制符,常用的控制符如下:
控制符
|
描 述
|
dec
hex oct setfill(c) setdivcision(n) setw(n) setiosflags(ios::fixed)
setiosflags(ios::scientific)
setiosflags(ios::left)
setiosflags(ios::right)
setiosflags(ios::skipws)
setiosflags(ios::uppercase)
setiosflags(ios::lowercase)
|
置基数为10
置基数为16 置基数为8 没填充字符为c 没显示小数精度为n位 设域宽为n个字符 固定的浮点显示 指数表示 左对齐 右对齐 忽略前导空白 16进制数大写输出 16 进制数小写输出 |
例子如下:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int n,m;
cin>>n>>m;
int a[n][m];
int b[m][n];
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
cin>>a[i][j];
cout<<setw(4)<<a[i][j];
b[j][i]=a[i][j];
}
cout<<endl;
}
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
cout<<setw(4)<<b[i][j];
}
cout<<endl;
}
}
运行结果为: