思路:
首先打好框架,再往里慢慢填东西,很麻烦,不过挺有意思的。
代码:
#include<iostream>
using namespace std;
int main()
{
char a, b;//a是填充边框和对角线的字符,b是填充其他地方的字符
int c, i, j,p=1,q;//c是边长
cin >> c >> a >> b;
q = c;//偏右的对角线
for (i = 1; i <= c; i++)//基本框架
{
if (i == 1 || i == c)//上下两个边(10)
{
for (j = 1; j <= c; j++)
{
cout << a;
if (j == c)
cout << "\n";
}
}
if (i > 1 && i < c)//制造两边(8)
{
for (j = 1; j <= c; j++)
{
if(j==1||j==c||j == p||j==q) //p是靠左,q是靠右
cout << a;
else//填充其他
cout << b;
if (j == c)//实现换行的
cout << "\n";
}
}
p++;
q--;
}
return 0;
}