首页 > 其他分享 >C语言 写一个数字 在数组中查找到,下面以7为例子

C语言 写一个数字 在数组中查找到,下面以7为例子

时间:2022-12-20 18:31:12浏览次数:47  
标签:arr right int mid C语言 查找 数组 printf left

//int main()

//{

//    int arr[] = {1,2,3,4,5,6,7,8,9,10};

//    int k = 7;

//       int i =0;

//       int sz = sizeof(arr)/sizeof(arr[0]);

//       for(i=0;i<sz;i++)

//       {

//           if(k==arr[i])

//           {

//               printf("找到了");

//               break;

//           }

//       }

//        if(i == sz)

//            printf("没找到");

//

//    return 0;

//}

    

 //折半查找算法/二分查找算法

 int main()

 {

     int arr[] = {1,2,3,4,5,6,7,8,9,10};

     int k = 6;

     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)

     {

         right = mid-1;

     }

     else if (arr[mid]<k)

     {

         left = mid + 1;

     }

     else

     {

         printf("找到了,下标是:%d\n",mid);

         break;

     }

   }

   if(left>right)

   {

       printf("找不到");

   }

     return 0;

 }

标签:arr,right,int,mid,C语言,查找,数组,printf,left
From: https://blog.51cto.com/u_15916254/5956418

相关文章

  • C语言基础一
    C语言基础原文链接:青空の霞光_C语言程序设计(二)基础内容C程序基本格式前面在创建项目之后自动生成了一个.c文件,这个就是编写的程序代码文件:#include<stdio.h>intma......
  • 查找子串
    #查找子串需求:查找一个字符串中是否包含某个关键词(查找子串问题)是很常见的操作。比如:给定一句话s,查找s中是否包含某关键词。in操作符如果只是为了判断s中是否包含麦叔......
  • 王爽 汇编语言第三版 第7章 --- 更灵活的定位内存地址的方法(可以理解为 数组形式的内
     汇编语言(第三版)王爽著的十二  大小端字节对齐 对于arm,intel这种x86构架的复杂指令CPU,整数在内存中是倒着存放的,低地址放低位,高地址放高位,小端对齐。但对于unix......
  • 教你如何查找入侵者
    一天正在发呆,QQ上的一个朋友向我求救:“我的网站被黑了,首页给换了,SOS!”。最近正好无事,索性就帮帮他吧。收复失地刚刚准备在浏览器上输入他网站的地......
  • json提取器和beanshell处理器组合,将提取的所有id以数组返回
    1.添加json提取器2.添加beanshell处理器,并编写脚本Stringstr1=vars.get("buildid_ALL");log.info(str1);Listlist=Arrays.asList(str1.split(","));log.info(......
  • 795前缀和,线段树,树状数组
    题目描述输入一个长度为\(n\)的整数序列。接下来再输入\(m\)个询问,每个询问输入一对\(l,r\)。对于每个询问,输出原序列中从第\(l\)个数到第\(r\)个数的和。输......
  • $set解决vue中修改数组或对象视图不更新的问题,uniapp应用vue2也会有同样的问题
    相信大家和我一样,在开发中总是遇到一个问题。为啥我修改v-for遍历的数组,视图却没有更新???当我点击其他操作重新渲染后,又更新了???这不会是vue出bug了吧这项问题其实正是由vue......
  • 第七章结构体、类指针、数组
    第七章类、结构体、指针、引用      类可以将变量、数组和函数完美地打包在一起。                                    ......
  • 技术分享 | 在磁盘上查找 MySQL 表的大小
    作者:PeterZaitsev翻译:管长龙我想知道MySQL表在磁盘上占用多少空间,但看起来很琐碎。不应该在​​INFORMATION_SCHEMA.TABLES​​中提供这些信息吗?没那么简单!这个看似......
  • js 数组去重
    利用Setconstres1=Array.from(newSet(arr));两层for循环+spliceconstunique1=arr=>{letlen=arr.length;for(leti=0;i<len;i+......