全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C语言二维数组中的查找的实例

C语言二维数组中的查找的实例

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

思路描述:一个数字的下方和右方是比它本身大的区域,而左方和上方时比它本身小的区域。选取右上角的数字进行比较,当该数大于指定的数时,舍去该列,当该数小于指定的数时,舍去该行,当相等时,则表示找到

C语言实现:

#include<stdio.h>
#include<stdlib.h>

typedef unsigned int boolean;
#define MAX 4
#define TRUE 1
#define FALSE -1

void showAry(int ary[MAX][MAX]);
boolean find(int ary[MAX][MAX], int rows, int cols, int number);

void showAry(int ary[MAX][MAX]) {
  int i = 0, j = 0;
  for(; i < MAX; i++) {
    j = 0;
    for(; j < MAX; j++) {
      printf("%d ", ary[i][j]);
    }
  }
}

boolean find(int ary[MAX][MAX], int rows, int cols, int number) {
  int i = 0, 
    j = cols - 1,
    n = 0;
  boolean result = FALSE;

  if(ary == NULL || rows <= 0 || cols <= 0) {
    return result;
  }

  while(i < rows && j >= 0) {
    n = ary[i][j];
    if(number == n) {
      printf("\nary[%d, %d] = %d\n", i, j, n);
      result = TRUE;
      break; 
    }else if(number < n) {
      j -= 1; 
    }else if(number > n) {
      i += 1;
    }
  }
  return result;
}

//1 2 8 9 2 4 9 12 4 7 10 13 6 8 11 15
int main() {
  int ary[MAX][MAX];
  int i = 0, j = 0;

  for(; i < MAX; i++) {
    j = 0;
    for(; j < MAX; j++) {
      scanf("%d", &ary[i][j]);
    }
  }
  showAry(ary);
  find(ary, MAX, MAX, 7);
}

以上就是讲解C语言二维数组中的查找的实例,希望能帮助需要同类型问题的朋友,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# C语言二维数组中的查找的实例  # 二维数组查找  # 关于C语言一维数组算法问题详解  # C语言一维数组初步学习笔记  # 关于C语言中的指针与二维数组  # C语言二维数组指针的概念及使用  # C语言与java语言中关于二维数组的区别  # 从头学习C语言之二维数组  # C语言面试C++二维数组中的查找示例  # C语言二维数组几种常用的表示方法  # C语言 指针与二维数组详解  # 直观理解C语言中指向一位数组与二维数组的指针  # C语言中的一维数组与二维数组的实现  # 组中  # 希望能  # 它本身  # 舍去  # 谢谢大家  # 从上到下  # 一个函数  # typedef  # unsigned  # gt  # stdlib  # MAX  # define  # int  # boolean  # stdio  # pre  # class  # strong  # 左到右 


相关文章: 如何快速搭建高效可靠的建站解决方案?  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  如何通过山东自助建站平台快速注册域名?  ,有什么在线背英语单词效率比较高的网站?  如何用虚拟主机快速搭建网站?详细步骤解析  网站制作公司排行榜,抖音怎样做个人官方网站  Swift中循环语句中的转移语句 break 和 continue  定制建站流程解析:需求评估与SEO优化功能开发指南  清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?  如何获取PHP WAP自助建站系统源码?  零基础网站服务器架设实战:轻量应用与域名解析配置指南  如何快速生成专业多端适配建站电话?  简单实现Android文件上传  c# 服务器GC和工作站GC的区别和设置  ppt制作免费网站有哪些,ppt模板免费下载网站?  黑客如何利用漏洞与弱口令入侵网站服务器?  如何快速查询网址的建站时间与历史轨迹?  网站制作公司,橙子建站是合法的吗?  建站之星价格显示格式升级,你的预算足够吗?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  TestNG的testng.xml配置文件怎么写  如何在万网开始建站?分步指南解析  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  Swift开发中switch语句值绑定模式  企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?  如何快速使用云服务器搭建个人网站?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  如何高效配置IIS服务器搭建网站?  建站主机CVM配置优化、SEO策略与性能提升指南  建站主机选购指南:核心配置优化与品牌推荐方案  c# await 一个已经完成的Task会发生什么  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  建站之星2.7模板快速切换与批量管理功能操作指南  教程网站设计制作软件,怎么创建自己的一个网站?  建站OpenVZ教程与优化策略:配置指南与性能提升  网站企业制作流程,用什么语言做企业网站比较好?  建站之星如何开启自定义404页面避免用户流失?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  如何选择高效可靠的多用户建站源码资源?  如何在阿里云完成域名注册与建站?  济南网站制作的价格,历城一职专官方网站?  制作企业网站建设方案,怎样建设一个公司网站?  宿州网站制作公司兴策,安徽省低保查询网站?  相册网站制作软件,图片上的网址怎么复制?  黑客如何通过漏洞一步步攻陷网站服务器?  制作网站的公司有哪些,做一个公司网站要多少钱?  网页设计网站制作软件,microsoft office哪个可以创建网页?  宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  如何快速查询网站的真实建站时间? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。