#include <stdio.h>
//二分法
int zbcz(int a[],int t,int w,int c){
while(t<=w){
int db=(t+w)/2;
if(c==a[db]){
return db;
}else if(c<a[db]){
w=db-1;
}else if(c>a[db]){
t=db+1;
}
}
return -1;
}
//冒泡
int* mq(inta,int b){
for(int i=0;i<b-1;i++){
for(int j=0;j<b-1-i;j++){
if(a[j]<a[j+1]){
int c=a[j];
a[j]=a[j+1];
a[j+1]=c;
}
}
}
return a;
}
//选择
intxz(inta,int b){
for(int i=0;i<b;i++){
int c=i;
for(int j=i;j<b;j++){
if(a[c]<a[j]){
c=j;
}
}
if(c!=i){
int d=a[i];
a[i]=a[c];
a[c]=d;
}
}
return a;
}
void bl(inta,int b){
for(int i=0;i<b;i++){
printf(“%d “,a[i]);
}
printf(”\n”);
}
int main(int argc, const char *argv[])
{
int a[]={4,10,22,30,45,58,66,72,79,85,90,97};
int b=0;
b=zbcz(a,0,sizeof(a)/sizeof(a[0])-1,90);
printf(“%d\n”,b);
int c[]={9,5,3,7,6,8,1,4,2};
int y=sizeof©/sizeof(c[0]);
mq(c,y);
bl(c,y);
int d[]={9,5,3,7,6,8,1,4,2};
int z=sizeof(d)/sizeof(d[0]);
xz(d,z);
bl(d,z);
return 0;
}