**输入一个数字想找出它所在数组中的位置,我们利用循环的方式去实现这一操作**
在这里插入#include<stdio.h>
int main()
{
int i=0,s=0;
int arr[]={1,2,3,4,5,6,7,8};
int m=0;
scanf("%d",&m);
s=sizeof(arr)/sizeof(arr[0]);**
for(i=0;i<s;i++){
if(arr[i]==m){
printf("下标为:%d\n",i);
break;
}
}
if(i==s){
printf("找不到\n");
}
return 0;
}代码片
## 二分查找法:
#include<stdio.h>
int main()
{
int arr[]={1,2,3,5,8,41,56};
int left=0;
int s=sizeof(arr)/sizeof(arr[0]);
int right=s-1;
int m;
scanf("%d",&m);
while(left<=right){
int mid=(left+right)/2;
if(m>arr[mid]){
left=mid+1;
}
else if(m<arr[mid]){
right=mid-1;
}
else{
printf("找到了,下标为:%d\n",mid);
break;
}
}
if(left>right)
printf("找不到\n");
return 0;
}