二维数组的鞍点(C语言)

一、鞍点解释;

鞍点就是该位置上的元素在该行上最大、在该列上最小;

二、N-S流程图;

三、运行结果;

四、源代码;

cs 复制代码
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>

int main()
{
	//初始化变量值;
	int a[4][5], i, j, k, max, maxj, flag;

	//填充数组a;
	printf("请填充一个4行5列的数组:\n");
	//循环填充;
	for (i = 0; i < 4; i++)
	{
		//列;
		for (j = 0; j < 5; j++)
		{
			//填充;
			printf("a[%d][%d]=", i, j);
			scanf("%d", &a[i][j]);
		}
	}

	//求出数组中的鞍点;
	for (i = 0; i < 4; i++)
	{
		//赋值;
		max = a[i][0];
		maxj = 0;
		//列;
		for (j = 0; j < 5; j++)
		{
			//判断;
			if (a[i][j] > max)
			{
				//赋值;
				max = a[i][j];
				maxj = j;
			}
		}

		//默认满足;
		flag = 1;

		//比较是否为整列最小值;
		for (k = 0; k < 4; k++)
		{
			//判断;
			if (max > a[k][maxj])
			{
				//赋值;
				flag = 0;
				continue;
			}
		}

		//判断是否为鞍点;
		if (flag == 1)
		{
			//输出;
			printf("a[%d][%d]=%d是数组的鞍点!!!\n", i, maxj, max);
			break;
		}
	}

	//输出结果;
	if (flag == 0)
	{
		//输出;
		printf("数组无鞍点!!!\n");
	}

	return 0;
}
相关推荐
路溪非溪3 分钟前
Python语言的执行流程总结
开发语言·python
民乐团扒谱机10 分钟前
【超详解】量子克拉美罗下界QCRB:时延估计精度极限推导+MATLAB多场景绘图实战
开发语言·机器学习·matlab·量子力学·qcrb
乐观勇敢坚强的老彭1 小时前
C++ 竞赛常用算法模板速查表
开发语言·c++·算法
高洁011 小时前
工信部教考中心证书
人工智能·深度学习·算法·机器学习·知识图谱
离陌在学C#1 小时前
C# 泛型:从基础到高级应用
开发语言·c#
ly76891 小时前
Java 设计模式详解:从原则到 23 种经典模式
java·开发语言·设计模式
SomeB1oody1 小时前
【RustyML入门】2.13. 孤立森林
开发语言·后端·机器学习·rust·教程
我变成萤火虫1 小时前
河南萌新联赛2026第(三)场:郑州轻工业大学
数据结构·c++·算法·贪心算法·stl·深度优先·哈希算法
Dr.kangder1 小时前
嵌入式面试总结(十九)——内存泄露
单片机·算法·面试·职场和发展·架构·硬件架构
萧瑟余晖1 小时前
Java深入解析篇三十之Java日志框架
java·开发语言