C标准库 lsearch函数

lsearch()函数用于在给定区域内从头到尾进行线性搜索。

lsearch()函数 语法

void*lsearch(const void*key,void*district,size_t*n,size_t m,int(*fc)(const void*,const void*));

lsearch()函数的语法参数说明如表所示。

lsearch()函数 语法

lsearch()函数的返回值:若找到关键数据,则返回找到的元素的地址;若所找数据不在查找区域,则将此数据加入到查找区域,再把加入后的地址返回。

lsearch()函数 示例

本示例使用lsearch函数实现在数组a中线性搜索元素27,并将新元素加入到数组中。其具体代码如下所示:

#include<stdlib.h>
#include<stdio.h>
int compare(int*x,int*y)/*自定义比较函数*/
{
     return(*x-*y);
}
int main(void)
{
     int a[5]={25,14,29,68,55};/*初始化数组*/
     size_t n=5;/*定义变量*/
     int key;
     int*result;
     key=27;
     result=lsearch(&key,a,&n,sizeof(int),(int(*)(const void*,const void*))compare);/*实现线性搜索*/
     if(result)
         printf("Number%d is found ",key);/*输出结果*/
     else
         printf("Number%d is not found ",key);
     return 0;
}

运行结果如图所示。

lsearch()函数 示例

赞(1)
未经允许不得转载:极客笔记 » C标准库 lsearch函数
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址