[题目]
如下,最外层输出X,次外层输出Y,依次往里面输出0、1、2......
最简单的方法是什么?
X X X X X X X
X Y Y Y Y Y X
X Y 0 0 0 Y X
X Y 0 1 0 Y X
X Y 0 0 0 Y X
X Y Y Y Y Y X
X X X X X X X
[我的代码]
#include <math.h>
#include <iostream>
using namespace std;

char gszData[] = ...{'X', 'Y', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'};
int iMax(int a, int b)
...{
return a >b ? a : b;
}
void bMyShow(int iCount)
...{
for (int i = 0; i < iCount * 2 - 1; i++)
...{
for (int j = 0; j < iCount * 2 - 1; j++)
...{
cout<<gszData[iCount - iMax(abs(iCount - i - 1), abs(iCount - j -1)) - 1]<<" ";
}
cout<<endl;
}
}
int main(int argc, char* argv[])
...{
bMyShow(7);
return 0;
}
本文介绍了一个使用C++实现的图案打印程序,该程序能够输出一个由不同字符组成的图案,字符从外到内分别为X、Y、0、1等。通过巧妙地利用数学函数和循环结构,代码实现了图案的动态生成。
3696

被折叠的 条评论
为什么被折叠?



