⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 折半查找.txt

📁 数据结构的线性表及其应用
💻 TXT
字号:
有如下数据:
成绩  75   87    68    92   88    61    77    96   80   72
姓名 王华 李英 张萍 陈涛  刘丽  章强  孙军  朱彬 徐伟 曾亚

用折半查找曾亚的成绩。
#include"stdio.h"
#define N 10
typedef struct 
{ 
struct student{
  char name[20];
  int  score;
};
typedef struct 
{ 
int stu[N]; 
int i; 
}sqlist;
struct student stu[10]={ {"王华",75},{"李英",87},{"张萍",68},{"陈涛",92},{"刘丽",88},{"章强",61},{"孙军",77},{"朱彬",96},{"徐伟",80},{"曾亚",72} };
  void creat_sqlist(sqlist &r) { 
  int i,x; 
  r.i=0; 
  printf("把学生的成绩输入:\n"); 
  scanf("%d",&x); 
  while(x<100||x=100){ 
  r.stu[++r.i]=x; 
  scanf("%d",&x); 
  }
   printf("\n"); 
 } 

  void binsearch(sqlist r){
  sqlist  r;
  int k,N;               /*N为线性表r 中元素个数*/
  printf("请输入k的值:\n");           
scanf("%d",&k);
    int i,low=1,high=N,mid;
    int find=0;           /*find=0表示未找到;find=1 表示已找到*/
    while (low <=high  && !find){ 
      mid =(low+high)/2;  		/*整除*/
      if (k<r[mid].key)  high=mid-1;
      else { if (k>r[mid].key)  low=mid+1;
           else {
                 i=mid;
                 find=1;
		   }
		}
      }
     if (!find)  i=0;
     return (i);
   }
int main(){
  sqlist r; 
  creat_sqlist(r); 
  bublsort(r); 
  binsearch(r);
}   

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -