大家好,我是屁孩君,今天屁孩君给大家带来的是拐角1这个题。
题目描述
输入整数N,输出相应方阵。
输入
一个整数N。( 0 < n < 10 )
输出
一个方阵,每个数字的场宽为3。
样例
输入
5
输出
1 1 1 1 1
1 2 2 2 2
1 2 3 3 3
1 2 3 4 4
1 2 3 4 5
屁孩君采用的是递归这个题,当然用二维数组也是可以的!用递归只是为了锻炼一下屁孩君的递归能力!!!
屁孩君先来给大家写一下步骤
1:找规律
2:写出循环
3:将循环改写成递归
4:收工睡觉(逃走了 )
话不多说直接上代码(不会写注释的 )<——当然不可能了。
#include
using namespace std;
int a[20][20];
int n;
void f(int i)
{
if(i<=n)
{
for(int j=i;j<=n;j++)//每一行的长度就是所要赋的值
{
a[i][j]=i;//复制行
a[j][i]=i;//复制列
}
f(i+1);//递归循环
}
}
int main()
{
cin>>n;
f(1);//调用递归
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
cout<<setw(3)<<a[i][j];//场宽为3
}
cout<<endl;//输完换行!
}
return 0;
}
大功告成!博主要去睡觉了 !
古德拜!
记得一键三连哦!