提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
    • 关于C语言中二维数组查找靶点的问题
  • 一、靶点是什么?
  • 二、算法设计
    • 1.思考如何找到该二维数组的靶点
    • 2.读入数据

前言

关于C语言中二维数组查找靶点的问题

提示:以下是本篇文章正文内容,下面案例可供参考

一、靶点是什么?

举例:假设有一个二维数组 如果该数组的一个位置是此行最大并且为此列最小的元素,我们把这样的数据位置称之为靶点。

二、算法设计

1.思考如何找到该二维数组的靶点

通过之前对于二维数组的学习我们不难发现当查找每一行或者每一列中最大最小的元素,可以通过两个循环轻松实现。我们也可以用这种方法来实现靶点的查找:
即从数组的第0行开始搜寻该行最大元素的位置,记录下该行最大元素的列,然后以该列为定位,从最小行到最大行依次搜寻最小元素的位置。如果搜索完成后,列最小元素的行地址正好等于搜索最大元素的行地址即可说明该元素为一个靶点。

2.读入数据

代码如下(示例):

int x[10][10], i, j, k;int Max, Min, n, m, a1=0, a2=0;printf("输入矩阵的行与列");scanf("%d%d", &n, &m);for ( i = 0; i < n; i++){for ( j = 0; j < m; j++){scanf("%d", &x[i][j]);    //代码读入部分}}for ( i = 0; i < n; i++)     //进行二维数组行的依次遍历{a1 = 0; Max = x[i][a1];for ( j = 1; j < m; j++)    //找到最大元素的列下标{if (x[i][j]>Max){a1 = j;}}a2 = i; Min = x[i][a1];   //根据找到列元素的下标 进行行元素遍历for ( k = 0; k < 3; k++){if (x[k][a1]<Min){a2 = k;}}if (a2==i)             //如果遍历后仍然符合靶点条件则输出靶点元素{printf("已找到靶点为%d,行:%d  列:%d", x[a2][a1], a2, a1);}}# 总结
注意每次进入行列元素时,a1 a2必须先被赋予初值,否则如果该元素就是符合条件的,可能循环中的条件一次也没被触发从而不能达到程序的预期效果。

C语言中二维数组靶点的查找(一行内最大,一列内最小)相关推荐

  1. c语言动态的申请矩阵存储空间,C语言中二维数组如何申请动态分配内存

    C语言中二维数组如何申请动态分配内存: 使用malloc函数,先分配第一维的大小,然后再循环分配每一维的大小 #include #include int main() { int **a; int i ...

  2. c语言统计二维数组中数字出现次数,C语言二维数组中的查找的实例

    C语言二维数组中的查找的实例 题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该 ...

  3. c语言中二维数组怎么,c语言中什么是二维数组

    c语言中什么是二维数组 二维数组A[m][n],这是一个m行,n列的二维数组.以下是由应届毕业生小编整理关于c语言二维数组的内容,希望对大家有所帮助!更多相关内容请关注应届毕业生考试 网. c语言的二 ...

  4. 关于c语言中二维数组及相关指针的理解

    一,示例 文章的开头让我们来先看关于c语言二维数组及相关指针的几句话. 假设a是一个整型的二维数组名,用<==>代表等价符号. 1,a可以代表这个二维数组的首行首地址,a+i代表序号为i的 ...

  5. c语言怎么用二维数组表示坐标,c语言中二维数组怎么用?

    c语言二维数组的使用方法:首先打开c语言脚本文件并定义一个二维数组:然后调用一个自定义函数求二维数组每列元素中的最小值的和值:最后通过返回值传回主函数输出即可. C语言的学习中,二维数组可以算是基础中 ...

  6. c语言中二维数组中维数的计算,数组指针字符串C语言程序设计-第4章.ppt

    <数组指针字符串C语言程序设计-第4章.ppt>由会员分享,可在线阅读,更多相关<数组指针字符串C语言程序设计-第4章.ppt(132页珍藏版)>请在人人文库网上搜索. 1.程 ...

  7. c语言中二维数组中产生随机数,C语言中是如何进行随机数生成的[多图]

    C语言中是如何进行随机数生成的.C语言是编程人员经常会到的一款计算机编程语言,有的朋友想知道怎样使用C语言进行随机数生成,那么就快随小编一起来看看这篇C语言中是如何进行随机数生成的吧!其中不仅为大家介 ...

  8. C语言中二维数组名与数组地址、首行地址、首行首元素地址关系与区别详解(初学者必须掌握)

    C语言作为很多大学理工科都会学习的语言,作为一种编程入门语言. 但是相对于其他高级编程语言来说相对是比较难,尤其是指针,不知道有多少莘莘学子都是因为它,从C语言入门到放弃. 想当年,笔者在大一学习C语 ...

  9. java二维数组如何传参_C语言中二维数组作为函数参数来传递的三种方法

    c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下: 方法一, 形参给出第二维的长度. 例如: #include void func(int n, char str[ ][5] ) { i ...

最新文章

  1. 【转载】MSXML应用总结 开发篇(下)
  2. R语言按组聚合求和实战(sum a variable by group):使用aggregate函数按组聚合求和、使用tapply函数按组聚合求和、按组聚合求和(使用dplyr包)
  3. python matplotlib模块画出的图像转换为.tiff格式
  4. python入门到精通需要学多久-Python零基础入门到精通:一个月就够了
  5. Redis专题-集群模式
  6. 对照表 - 用心整理了一批国内省份、城市、县城的对照表,用于匹配,拿走不谢
  7. jeewx-api 1.0.5 版本发布,微信SDK接口封装(支持微信第三方开放平台)
  8. 9月26日云栖精选夜读:阿里Java代码规约插件即将全球首发,邀您来发布仪式现场...
  9. 8_python基础—高级变量类型(字符串、列表、元组、字典、集合)
  10. 最耗性能的SQL语句
  11. 1-3 Sass 语法、编译、调试
  12. 教你轻松搞定Vue事件总线(EventBus)
  13. 救急的戴尔Latitude 10商用平板电脑
  14. httphandler防图片盗链
  15. Linux 远程登录配置
  16. CentOS 挂载数据盘
  17. 王乐园 php_见到海贼王主题乐园的雕像,感觉认知回不去了,索隆是认真的?...
  18. amd显卡风扇调节_显卡风扇转速调节
  19. 数据预处理——样本分布(正态分布、偏态分布)
  20. 一文详解微服务架构 [文末中奖名单]

热门文章

  1. 有趣的历史,据说都是真的
  2. NV16和BGR相互转换C++实现
  3. 脱壳系列_1_UPX壳_详细版
  4. css设置背景颜色渐变
  5. android 7.0安装包,安卓7.0安装包,安卓7.0通用升级安装包免费预约 v7.0-手游汇
  6. 电竞CSGO数据API接口 - 【最近赛事列表】API调用示例代码
  7. Adaptive AUTOSAR架构介绍(9)
  8. 基于微信小程序的高校课堂教学管理系统
  9. diamond之综合报不知名的错误
  10. vs2019中使用github看不到更改按钮如何解决