C語言二分法查找數列中指定數字


在公茂果老師的課件中,出現的好多具體的算法例子,這里,跟蹤給出,二分法查找的指定數字的代碼:

  • 實現環境:VMware下的Ubuntu 17.4
  • 編譯環境:自帶編譯器。

下面給出Ubuntu下,編譯環境的操作過程:

  1. 同時按下“ALT”+"CRTL"+"t",彈出終端界面
  2. 創建:命令 gedit main.c         gedit為創建命令, 創建C文件,名稱為main
  3. 編輯:命令 gtouch main.c  彈出文本框,進行編輯
  4. 編譯:"ALT"+"F4"關掉文本框,進入終端界面,命令 gccmain.c 進行編譯,若無錯誤,會出現下一個命令提示符  g++是對C++文件的編譯
  5. 結果: ./a.out  即可查看

下面給出一個簡單二分法查找示例:

 1 #include<stdio.h>
 2 main()
 3 {
 4  int num[]={1,2,3,4,5,6,7,8,9,10};
 5  int left=0,right=9,a;
 6  int find;
 7  scanf("%d",&find);
 8  while(left<right)
 9  {
10      a=(left+right)/2;
11   if(num[a]==find)
12   {
13    printf("所找的數在第%d個",a+1);
14    break;
15   }
16   else if(find>num[a])
17   left=a+1;
18   else
19   right=a-1;
20  }
21  if(left<right)
22  printf("沒有這個數"); 
23 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM