先来段代码
#include<iostream>
#include<iomanip>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
for (int n = 1; n <= 10; ++n)
{
cout << setfill(' ') << setw(n) << " " << setfill('M') << setw(21 - 2 * n) << "M" << endl;
}
return 0;
}
//输出
MMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMM
MMMMMMMMMMMMM
MMMMMMMMMMM
MMMMMMMMM
MMMMMMM
MMMMM
MMM
M
实际上是个倒三角形M
有了上一记的学习 这里的setfill(' ') << setw(n)不难理解 这个必须连起来使用
具体拆解 我们改一下代码就一目了然
cout << setfill('0') << setw(n) << "1" << setfill('M') << setw(21 - 2 * n) << "O" << endl;
//输出语句改成这样
//输出结果
1MMMMMMMMMMMMMMMMMMO
01MMMMMMMMMMMMMMMMO
001MMMMMMMMMMMMMMO
0001MMMMMMMMMMMMO
00001MMMMMMMMMMO
000001MMMMMMMMO
0000001MMMMMMO
00000001MMMMO
000000001MMO
0000000001O
小记到此