作业 二维数组-矩阵问题

对角线之和

题目描述

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

输入

输入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;
}
相关推荐
元Y亨H2 分钟前
开发者必须掌握的十大核心算法
算法
元Y亨H6 分钟前
深度解构:数据结构与算法的理论基石与工程演进
数据结构·算法
元Y亨H20 分钟前
数据结构与算法的通俗指南
数据结构·算法
2301_7644413334 分钟前
用动力学系统(微分方程)为 Kernberg 的客体关系单元提供数学化的操作定义,把“自体—客体“这对心理结构建模成一个二维耦合系统
数据结构·python·算法·数学建模
林泽毅36 分钟前
PyTRIO快速入门(二):Datum构建
人工智能·算法·产品
keep intensify1 小时前
最长有效括号
算法·leetcode·动态规划
CoderYanger1 小时前
A.每日一题:1979. 找出数组的最大公约数
java·程序人生·算法·leetcode·面试·职场和发展·学习方法
猫头虎1 小时前
什么是ZCode for GLM-5.2?
开发语言·人工智能·python·科技·算法·ai编程·ai写作
长不胖的路人甲2 小时前
什么是赫夫曼树(哈夫曼树 / Huffman Tree)
python·算法·霍夫曼树
Warren2Lynch3 小时前
掌握 UML 构造型、标记定义与标记值:面向领域特定建模的 UML 扩展全面指南
大数据·算法·uml