(C语言)寻找局部最大值

2023-12-13 22:37:20

局部最大值:如果证书矩阵P的费边界元素P[i][j]大于相邻的上下左右四个元素,则P[i][j]为矩阵P的局部最大值。

编写程序实现对任意输入的m行n列的整数矩阵,输出该矩阵所有局部最大值及其所在位置。

#include<stdio.h>
void local(int m,int n)
{
	int a[m][n];
	for(int i = 0;i < m;i ++)
	{
		for(int j = 0;j < n;j ++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	for(int i = 1;i < m-1;i ++)
	{
		for(int j = 1;j < n-1;j ++)
		{
			if(a[i][j] > a[i-1][j] && a[i][j] > a[i][j-1] && a[i][j] > a[i+1][j] && a[i][j] > a[i][j+1])
				printf("极大值为%d,在第%d行第%d列\n",a[i][j],i+1,j+1); 
		}
	}
}
int main()
{
	int m,n;
	scanf("%d %d",&m,&n);
	local(m,n);
	return 0;
}

运行截图:

?

?

注:侵权可删

文章来源:https://blog.csdn.net/m0_57214074/article/details/134839436
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。