首页 > 其他分享 >学习C语言心得-自定义函数-对整形有序数组进行二分查找-二分法

学习C语言心得-自定义函数-对整形有序数组进行二分查找-二分法

时间:2023-10-14 13:32:02浏览次数:32  
标签:sz arr return 自定义 int mid C语言 二分法 printf

对整形有序数组进行二分查找

#include<stdio.h>
int find(int arr[],int sz,int k)
{
	int left = 0; int right = sz - 1;

	while (left<=right)
	{
		int mid = left + right / 2;
		if (k>arr[mid])
		{
			left = mid + 1;
		}
		if (k < arr[mid])
		{
			right = mid - 1;
		}
		if(k==arr[mid])
		{
			return mid;
		}
	}
	return -1;
}
int main()
{
	int k = 0;
	printf("请输入要查找的数字");
	scanf("%d", &k);
	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
	int sz = sizeof(arr) / sizeof(arr[0]);

	int undernumber = find(arr, sz, k);
	if (undernumber==-1)
	{
		printf("没找到!!!");
	}
	else
	{
		printf("找到了 下标为:%d", undernumber);
	}
	return 0;

}

运行结果:

学习C语言心得-自定义函数-对整形有序数组进行二分查找-二分法_有序数组

学习C语言心得-自定义函数-对整形有序数组进行二分查找-二分法_#二分法_02




标签:sz,arr,return,自定义,int,mid,C语言,二分法,printf
From: https://blog.51cto.com/u_16285697/7861028

相关文章

  • 初识C语言
    什么是C语言?C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。......
  • C语言预处理和宏
    C语言预处理和宏预处理命令预处理是C语言的一个重要功能,由预处理程序完成。当对一个源文件进行编译时,系统将自动调用预处理程序对源程序中的预处理部分作处理,处理完毕自动进入对源程序的编译。这些在编译之前对源文件进行简单加工的过程,就称为预处理。预处理阶段的工作:把代码当......
  • 萌新学习c语言记录
    今天写的题要求使用while语句发现输出一直循环一直循环着最后一个数然后看别人的答案发现要这样做然后我搜索了一下发现while(scanf("%d",&a)!=EOF)可以检查输入是否成功如果不输入的话将不会进行下一步......
  • 学习C语言心得-自定义函数 输入两个数字求和
    输入两个数字求和#include<stdio.h>intsum(inta,intb){ returna+b;}intmain(){ inta=0; intb=0; printf("请输入ab的值:"); scanf("%d%d",&a,&b); intSum=sum(a,b); printf("Sum=%d",Sum); return0;}运行......
  • 学习C语言心得-传址调用
    运用传址调用来交换两个数#include<stdio.h>inttransform(int*a,int*b){ intx=0; x=*a; *a=*b; *b=x;}intmain(){ inta=10; intb=20; printf("交换前:%d%d\n",a,b); transform(&a,&b); printf("交换后:%d%d\n",......
  • 学习C语言心得-运用自定义函数求素数
    自定义函数求素数#include<stdio.h>intpanduan(inta){ inti=0; for(i=2;i<a;i++) { if(a%i==0) { returna; } } return0;}intmain(){ intnumber=0; printf("请输入一个数:"); scanf("%d",&number); int......
  • hive大数据测试(时间数据清洗UDF打包到hive中调用自定义函数,hive表数据导出到本机)
    1.数据清洗pom依赖:<properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding&......
  • iOS 17.1 Beta 3上线:iPhone 15 Pro自定义操作按钮误触问题修复了
    在iPhone15Pro和iPhone15ProMax上,苹果将静音拨片重新设计为自定义操作按钮,支持一键启用各种操作。在系统中选定你要用的快捷功能后,按住此操作按钮即可启动相应的操作,比如静音模式、专注模式、相机、手电筒、语音备忘录、翻译、放大器、快捷指令以及辅助功能等等。尽管操作......
  • hashcat charsets文件夹下 .hcchr自定义字符集
    说明通常我们使用的是英文字符,abc123这些,但是如果遇到俄文、阿拉伯等一些非ASCII码的字符集,每次手动输入不现实。所以就可以保存到.hcchr文件中一、先看看,hashcat提供內建字符集?l=abcdefghijklmnopqrstuvwxyz?u=ABCDEFGHIJKLMNOPQRSTUVWXYZ?d=0123456789?s=......
  • 使用api调用chatGPT,python自定义接口方法
    用非官网的api一般要把官网地址https://api.openai.com/改为相应网站的url。今天测试的时候找了各种教程都没什么用,最后终于成功了,代码如下:importopenaiimportjsonimportosopenai.api_key="sk-xxxxxxxxxx"#改成你的keyopenai.api_base="https://yyyyyyyyyy/v1"#改成......