作业 二维数组-矩阵问题

对角线之和

题目描述

输入一个矩阵,输出右上-左下对角线上的数字和

输入

输入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;
}
相关推荐
√尖尖角↑3 小时前
力扣——【1991. 找到数组的中间位置】
算法·蓝桥杯
Allen Wurlitzer3 小时前
算法刷题记录——LeetCode篇(1.8) [第71~80题](持续更新)
算法·leetcode·职场和发展
百锦再5 小时前
五种常用的web加密算法
前端·算法·前端框架·web·加密·机密
碳基学AI6 小时前
北京大学DeepSeek内部研讨系列:AI在新媒体运营中的应用与挑战|122页PPT下载方法
大数据·人工智能·python·算法·ai·新媒体运营·产品运营
独家回忆3646 小时前
每日算法-250410
算法
袖清暮雨6 小时前
Python刷题笔记
笔记·python·算法
风掣长空7 小时前
八大排序——c++版
数据结构·算法·排序算法
流星白龙8 小时前
【C++算法】50.分治_归并_翻转对
c++·算法
Java致死9 小时前
费马小定理
算法·费马小定理
不吃元西10 小时前
leetcode 74. 搜索二维矩阵
算法·leetcode·矩阵