c语言编程题数组求解,谢谢 - 爱问答

(爱问答)

c语言编程题数组求解,谢谢

用随机函数(自查功能和用法)生成20个数存放到数组中并按降序排序,从键盘输入一个数,完成在数组中的二分查找

给你个参考

#include <stdlib.h>
#include <stdio.h>
#include <time.h>
////随机数+排序+对分搜索
////whoami1978 2018/5/1
int find_2(int *a,int m)
{
int low=0;
int high=9;
int mid;

while(low<=high)
{
   mid=(low+high)/2;
   mid-=mid%1;
   if (m<a[mid])
     high=mid-1;
     else
     if(m>a[mid])
       low=mid+1;
       else
        return mid;
 }
return -1;
}


int main(void)
{
  int i,j,b;
  time_t t;
  int a[20];

  srand((unsigned) time(&t));
  for(i=0; i<20; i++)
      a[i]= rand() % 100; //生成10个随机数,0-99
//最经典的冒泡排序
   for(i=0;i<19;i++)
   for(j=i+1;j<20;j++)
      if(a[i]>a[j])
      { b=a[i];
     a[i]=a[j];
     a[j]=b;
   }
  for(i=0;i<20;i++)
    printf("%d ",a[i]);  
  printf(" ");
  scanf("%d",&b);
  printf("%d ",find_2(a,b));
  return 0;
}


相关标签:谢谢c语言

下一篇:NETFramework4.5.2版本如何删掉,麻烦附图,谢谢

上一篇:和硕主板BIOS怎么从二代升级成三代

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?