对角线之和
题目描述
输入一个矩阵,输出右上-左下对角线上的数字和
输入
输入1个整数N。(N<10)表示矩阵有n行n列
输出
对角线的和
样例
输入复制
4
1 2 3 4
2 3 4 5
4 5 6 7
1 2 3 4
输出复制
14
cpp
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[100][100] = {0};
int n;
cin>>n;
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
cin>>a[i][j];
}
}
int sum = 0;
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
if(i == j)
{
sum = sum + a[i][j];
}
}
}
cout<<sum;
return 0;
}
右转90度
题目描述
输入一个矩阵,输出他右转90度后的结果
输入
输入1个整数N。(N<10)表示矩阵有n行n列
输入n行,代表矩阵内的数据
输出
右转90度后的结果
样例
输入复制
3
1 2 3
4 5 6
7 8 9
输出复制
7 4 1
8 5 2
9 6 3
cpp
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[100][100] = {0};
int n;
cin>>n;
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
cin>>a[i][j];
}
}
int sum = 0;
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
if(i == j)
{
sum = sum + a[i][j];
}
}
}
cout<<sum;
return 0;
}
矩阵交换行
题目描述
给定一个5*5的矩阵(数学上,一个r×c的矩阵是一个由r行c列元素排列成的矩形阵列),将第n行和第m行交换,输出交换后的结果。
入输
入共6行,前5行为矩阵的每一行元素,元素与元素之间以一个空格分开。
第6行包含两个整数m、n,以一个空格分开。(1 <= m,n <= 5)
输出
输出交换之后的矩阵,矩阵的每一行元素占一行,元素之间以一个空格分开。
样例
样例输入
1 2 2 1 2
5 6 7 8 3
9 3 0 5 3
7 2 1 4 6
3 0 8 2 4
1 5
样例输出
3 0 8 2 4
5 6 7 8 3
9 3 0 5 3
7 2 1 4 6
1 2 2 1 2
cpp
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[100][100] = {0};
for(int i = 0;i<5;i++)
{
for(int j = 0;j<5;j++)
{
cin>>a[i][j];
}
}
int m,n;
cin>>m>>n;
for(int i = 0;i<5;i++)
{
for(int j = 0;j<2;j++)
{
int b[110] = a[m][j];
a[m][n] = a[n][m];
a[n][m] = b[110];
}
}
for(int i = 0;i<5;i++)
{
for(int j = 0;j<2;j++)
{
cout<<a[i][j];
}
}
return 0;
}
数字走向
题目描述
输入整数N,输出相应方阵。
输入
一个整数N。(0 < n < 10 )
输出
一个方阵,每个数字的场宽为3。
样例
输入复制
5
输出复制
25 24 23 22 21
20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
cpp
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[100][100] = {0};
int n;
cin>>n;
int m = n*n;
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
a[i][j] = m;
m--;
}
}
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
斜角I
题目描述
输入整数N,输出相应方阵。
输入
一个整数N。(0 < n < 10 )
输出
一个方阵,每个数字的场宽为3。
样例
输入复制
5
输出复制
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
cpp
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[100][100] = {0};
int n;
cin>>n;
int m = 1;
for(int i = 0;i<n;i++)
{
m = i;
for(int j = 0;j<n;j++)
{
a[i][j] = m;
m++;
}
}
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
斜角II
题目描述
输入整数N,输出相应方阵。
输入
一个整数N。(0 < n < 10 )
输出
一个方阵,每个数字的场宽为3。
样例
输入复制
5
输出复制
5 4 3 2 1
4 4 3 2 1
3 3 3 2 1
2 2 2 2 1
1 1 1 1 1
cpp
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[100][100] = {0};
int n;
cin>>n;
int m = n;
for(int i = 0;i<n;i++)
{
m = m-i;
for(int j = 0;j<n;j++)
{
a[i][j] = m;
m--;
}
}
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
斜角III
题目描述
输入整数N,输出相应方阵。
输入
一个整数N。(0 < n < 10 )
输出
一个方阵,每个数字的场宽为3。
样例
输入复制
5
输出复制
A B C D E
B C D E A
C D E A B
D E A B C
E A B C D
cpp
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[100][100] = {0};
int n;
cin>>n;
int m = 1;
for(int i = 0;i<n;i++)
{
m = i;
for(int j = 0;j<n;j++)
{
a[i][j] = m;
m++;
}
}
for(int i = 0;i<n;i++)
{
for(int j = 0;j<n;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}