1、鞍点的定义:某个元素在其所在行中最大、所在列中最小。
2、程序代码

//求一个二维数组的鞍点 二维数组可能没有鞍点,如果有,只能有一个
#include<stdio.h>
int main()
{int i,j,m,n,max,maxj;  //定义 printf("请输入二维数组的:行 列\n"); //确定二维数组的行列 scanf("%d%d",&m,&n);int a[m][n];printf("请输入一个%d*%d的二维数组:\n",m,n);for(i=0;i<m;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);        //键盘输入值存入数组元素地址 for(i=0;i<m;i++){max=a[i][0];         //假设行元素第一个为本行最大值 maxj=0;              //行元素最大值的列下标 for(j=1;j<n;j++)     {if(max<a[i][j]){   max=a[i][j];        //找出行最大 并标记最大值的列下标 maxj=j;}}for(j=0;j<m;j++){if(max>a[k][maxj])        //验证其值在所在列中最小 break;                 }if(j>=m){     printf("二维数组的鞍点为:a[%d][%d]=%d\n",i,maxj,max);break;                }                   }if(i>=m)printf("此二维数组没有鞍点。\n");//如果遍历所有行都不符合则没有鞍点 return 0;
}//总结:因为一个二维数组有且只有一个鞍点,所以可根据定义先找出行最大并标记列下标,
//再验证其值是所在列最小,若不满足提前break跳出,若满足则输出鞍点,并加break提前跳出循环防止鞍点是最后一行元素的情况
//自然循环跳出和break跳出的循环变量的值不同作为一个判定条件

3、运行示例

C语言练习二 :找出一个二维数组的鞍点相关推荐

  1. python求二维数组的鞍点_C语言程序,找出一个二维数组的鞍点。

    什么是鞍点????? 鞍点就是在一个二维数组中,某一个数在该行中最大,然而其在该列中又是最小的数,这样的数称为鞍点. 昨天突然在书上看到这样的一道题,就自己尝试着写了一个找出一个二维数组中的鞍点. 好 ...

  2. (C语言)找出一个二维数组中的鞍点,即该位置上的元素在该行最大,在该列上最小,也可能没有鞍点。存在则输出坐标;否则输出 -1.

    #include<stdio.h> /* 找出一个二维数组中的鞍点,即该位置上的元素在该行最大, 在该列上最小,也可能没有鞍点.存在则输出坐标:否则输出 -1. */ int main(v ...

  3. 找出一个二维数组中的鞍点

    找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小.也可能没有鞍点. 解题流程如下: 对每行进行遍历.先找到每行的最大值,然后再确定该最大值是否是所在列的最小值,若满足,则为鞍点,遍 ...

  4. 找出一个二维数组中的鞍点,即该位置上的元素在该行最大,在该列最小,也可能没有靶点

    找出一个二维师数组中的鞍点,即该位置上的元素在该行最大,在该列最小,也可能没有靶点 思路: 找出某行最大数,再判断此数是否是所在列最小 代码: #include<stdio.h> int ...

  5. 习题 5.7 找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小(也可能没有鞍点)。

    C++程序设计(第三版) 谭浩强 习题5.7 个人设计 习题 5.7 找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小(也可能没有鞍点). 代码块: #include <io ...

  6. matlab查找鞍点的位置,找出一个二维数组中的鞍点,即该位置上的元素在该行上最大、在该...

    /* 二维数组中的鞍点,即该位置上的元素在该行上最大.在该列上最小.也可能没有鞍点 二维数组鞍点判断,要逐个要素进行确认,并用二维数组记录满足各要素时的坐标, 之后进行各性质重合对比来确定,也就是说, ...

  7. 求二维数组中的最大值和最小值C语言,c语言 写一个子函数要求找出一个二维数组的最大值...

    并且返回两个维 求助 想不出来怎么写 题主的问题问的不够清楚.我假设你说的二维数组里面保存是整数,问的是找到二维数组中的最大值,并且返回一个最大值的位置.函数内部两个for循环遍历数组,能找到最大值和 ...

  8. 找出一个二维数组中的鞍点,既该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。(C语言程序设计第五版 p166.8)

    一,条件:该行最大(只有一个) 该列最小(只有一个) 二,功能:输入一个任意二维数组,输出鞍点或者输出鞍点不存在 三,思路: 以2*2的数组为例 (1,1) (1,2)   (2,1)   (2,2) ...

  9. C++找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小(也可能没有鞍点)

    今日正式用csdn博客记录,回顾我所学到的知识,分享一些我的人生感悟和自身经历.也希望未来通够过此平台和更多喜爱编程的人交流学习. 道听途说再加上自己的感悟,认为编程最重要的是思想,而不是语言本身,语 ...

最新文章

  1. while(scanf(%d,n)!=EOF)
  2. IOS UIView 放大缩小
  3. 标记页面区分渠道php,PM必懂的前端知识
  4. 为什么 头条 宇宙条_“当宇宙行遭遇黑洞……“【59期省联社微信传播力榜单】...
  5. 剑指 Offer 05. 替换空格(两种做法)
  6. java实现可选形参_Java:可选的可选实现
  7. 83. 删除排序链表中的重复元素
  8. 正则表达式:日期格式的校验(日期+时间)
  9. java并发(3)ThreadLocal的使用及实现原理(实现原理)
  10. maven的基本命令
  11. 深度学习pytorch基础入门教程(1小时)-自动梯度
  12. 数据--第39课 - 二叉树课后练习
  13. 基础都掌握了却还是敲不出代码?编程新手如何快速提升coding能力?
  14. java学习之道 --- 如何学习java?
  15. 生信分析是个什么玩意儿?
  16. Excel在行上输入连续序号的3种方法的操作比较
  17. 利用python爬取京东平台评论及图片并进行分析
  18. Pikachu漏洞练习平台----验证码绕过(on server) 的深层次理解
  19. vs2015 x86的Qt项目迁移到vs2017 x64平台
  20. 如何理解GPU中的SIMT(单指令流多线程模型)

热门文章

  1. 家用投影机预埋布线图_投影仪布线安装技巧 再也不用看安装示意图了
  2. unresolved external symbol __imp__timeGetTime@0
  3. 一起来看流星雨剧情简介/剧情介绍/剧情分集介绍第十九集
  4. Linux下目录的作用
  5. 在YARN上使用Flink有3种模式:Per-Job模式、Session模式和Application模式-1。job的轻巧提交设置
  6. 微信支付 生成付款二维码链接 并生成支付二维码图片 .net C#
  7. VS中调用工业相机Basler
  8. MATLAB程序设计与应用(第三版)刘卫国 答案(一)
  9. C语言的冒泡排序优化及鸡尾酒排序问题分解知识点
  10. 计算机语言学 pdf,语言学必读书目PDF版.doc