随机输入一组数组元素值,使一个数组有序。然后随机输入一个数,用折半查找法在数组中查找,如在数组中 50
随机输入一组数组元素值,利用题<2>使一个数组有序。然后随机输入一个数,用折半查找法在数组中查找,如在数组中,则输出元素在数组中的位置;如不在,则输出提示。...
随机输入一组数组元素值,利用题<2>使一个数组有序。然后随机输入一个数,用折半查找法在数组中查找,如在数组中,则输出元素在数组中的位置;如不在,则输出提示。
展开
1个回答
2020-05-07
展开全部
#include <iostream>
#include <math.h>
#include <fstream>
#include<math.h>
#include<string.h>
using namespace std;
int main() {
int s[15];
for(int i=0;i<15;i++){
cin>>s[i];
}
for(int i=0;i<14;i++)
{
for(int k=i;k<15;k++)
{
if(s[i]>s[k])
{
int temp=s[i];
s[i]=s[k];
s[k]=temp;
}
}
}
int num;
cout<<"输入一个想找的数";
cin>>num;
int low=0;
int hight=14;
int mid;
while(low<=hight)
{
mid=(low+hight)/2;
if(num==s[mid])
{
cout<<"找到了位于"<< "s["<<mid<<"]";
return 0;
}
else if(num>s[mid])
{
low=mid+1;
}
else if(num<s[mid])
{
hight=mid-1;
}
}
cout<<"没有找到";
return 0;
}
#include <math.h>
#include <fstream>
#include<math.h>
#include<string.h>
using namespace std;
int main() {
int s[15];
for(int i=0;i<15;i++){
cin>>s[i];
}
for(int i=0;i<14;i++)
{
for(int k=i;k<15;k++)
{
if(s[i]>s[k])
{
int temp=s[i];
s[i]=s[k];
s[k]=temp;
}
}
}
int num;
cout<<"输入一个想找的数";
cin>>num;
int low=0;
int hight=14;
int mid;
while(low<=hight)
{
mid=(low+hight)/2;
if(num==s[mid])
{
cout<<"找到了位于"<< "s["<<mid<<"]";
return 0;
}
else if(num>s[mid])
{
low=mid+1;
}
else if(num<s[mid])
{
hight=mid-1;
}
}
cout<<"没有找到";
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询