c语言编程:输入 n(n<10) 个整数,将它们存入数组 a 中,再输入一个整数 x,然后在数组 a 中查找与 x
相同的元素如果找到,输出x在数组a中各对应元素(即可以出现多个)的下标,如果没有找到,输出相应信息。如:输入8输入12556657788905输入5则输出a[1]a[7]...
相同的元素如果找到,输出 x 在数组 a 中各对应元素(即可以出现多个)的下标,如果没有找到,输出相应信息。如:输入8
输入12 5 56 657 78 89 0 5
输入5
则输出a[1] a[7]
又如:输入8
输入12 5 56 657 78 89 0 5
输入3
则输出Not Found
# include <stdio.h>
int main(void)
{ int a[10];
int low,high,mid,n,x,i;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",a[i]);
}
scanf("%d",x);
low=0;high=n-1;
while(low<=high){
mid=(low+high)/2;
if(x==a[mid])
break;
else if(x<a[mid])
high=mid-1;
else
low=mid+1;
}
if(low<=high)
printf("Index is %d\n",mid);
else
printf("Not Found\n");
return 0;
}
哪里错了_(:зゝ∠)_ 展开
输入12 5 56 657 78 89 0 5
输入5
则输出a[1] a[7]
又如:输入8
输入12 5 56 657 78 89 0 5
输入3
则输出Not Found
# include <stdio.h>
int main(void)
{ int a[10];
int low,high,mid,n,x,i;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",a[i]);
}
scanf("%d",x);
low=0;high=n-1;
while(low<=high){
mid=(low+high)/2;
if(x==a[mid])
break;
else if(x<a[mid])
high=mid-1;
else
low=mid+1;
}
if(low<=high)
printf("Index is %d\n",mid);
else
printf("Not Found\n");
return 0;
}
哪里错了_(:зゝ∠)_ 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询