初识C语言之二维数组(下)

一.二分查找(折半查找)

①题目描述:在有序数组中查找n

②前提:该数组是有顺序的

③代码实现:

#include<stdio.h>

int main()

{

int k=0;//定义一个变量并且初始化为零

scanf("%d",&k);//键盘输入要查找的数字

int sz=sizeof(arr)/sizeof(arr[0]);//计算数字的个数

int left=0;//定义一个变量为数字最左边的值

int right=sz-1;//定义一个变量为数字最右边的值

while(left<=right)//当左数小于等于右数时,触发循环

{

int mid=(left+right)/2;//定义变量为中间数

if(arr[mid]>k)//当中间数大于k

{

right=mid-1;//将中间值减一赋给右值

}

if(arr[mid]<k)

{

left=mid+1;

}

if(arr[mid]=k)//当中值刚好等于k

{

printf("找到了,下标为%d",mid);

break;//结束循环

}

}

if(left>right)

{

printf("找不到");

}

return 0;

}

相关推荐
笨笨饿3 小时前
#65_反激电源
stm32·单片机·嵌入式硬件·算法·硬件工程·个人开发
wengqidaifeng3 小时前
数据结构:排序(下)---进阶排序算法详解
数据结构·算法·排序算法
MicroTech20253 小时前
突破单机量子计算限制:MLGO微算法科技的新型分布式量子算法模拟平台实现高效验证
科技·算法·量子计算
没有天赋那就反复3 小时前
C++里面引用参数和实参的区别
开发语言·c++·算法
wengqidaifeng3 小时前
数据结构:排序(上)---基础排序算法详解
数据结构·算法·排序算法
Zlssszls3 小时前
机器人马拉松的第二年,比的是其背后的隐形赛场:具身训练工具链
算法·机器人
shylyly_3 小时前
sizeof 和 strlen的理解与区分
c语言·算法·strlen·sizeof
m0_743106463 小时前
【浙大&南洋理工最新综述】Feed-Forward 3D Scene Modeling(五)
人工智能·算法·计算机视觉·3d·几何学
Chockong4 小时前
11_vim自动插入文件头模板(.c/.cpp/.py/.txt)设置
c语言·vim
学会去珍惜11 小时前
是什么意思c语言
c语言·编程语言·底层开发·面向过程·系统软件