模板
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,a[110][110];
cin>>n;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
a[i][j]=表达式;
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
cout <<a[i][j] << " ";
}
cout << endl;
}
return 0;
}
下面是几种输出的表达式(此处的输入均为3):
1.输出:
1 2 3
4 5 6
7 8 9
(i-1)*n+j
2.输出:
3 2 1
6 5 4
9 8 7
(i-1)*n+(n+1-j)
可化简为 n*i-j+1
3.输出:
7 8 9
4 5 6
1 2 3
(n-i)*n+j
4.输出:
9 8 7
6 5 4
3 2 1
(n-i)*n+n+1-j
5.输出:
1 4 7
2 5 8
3 6 9
(j-1)*n+i
6.输出:
3 6 9
2 5 8
1 4 7
(j-1)*n+n+1-i
7.输出:
7 4 1
8 5 2
9 6 3
(n-j)*n+i
8.输出:
9 6 3
8 5 2
7 4 1
(n-j)*n+n+1-i
9.输出:
3 2 1
4 3 2
5 4 3
i+n+1-j-1
可化简为:i+n-j
10.输出:
3 4 5
2 3 4
1 2 3
n+1-i+j-1
可化简为:j+n-i
11.输出:
5 4 3
4 3 2
3 2 1
n+1-i+n+1-j-1
可化简为:2*n+1-i-j
特殊:
1 2 3
2 3 2
3 2 1
程序为:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,a[110][110];
cin>>n;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
if(i+j<=n+1)
a[i][j]=i+j-1;
else
a[i][j]=n+1-i+n+1-j-1;
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
cout <<setw(3)<<a[i][j] << " ";
}
cout << endl;
}
return 0;
}
备注:stew(参数)为场宽,可用可不用。