C++实现填充数组,输入一个目标值,查询该目标值是否在该数组中且输入所在数组的索引。
其具体实现代码如下:
#include<iostream>
using namespace std;
const int largeLength = 4;
void fillArray(int a[],int number,int& numberUsed)
{
int index=0,next;
cout<<"请输入"<<number<<"个非负数,";
cout<<"键入负数表示结束!\n";
cout<<"请输入数字:"<<endl;
cin>>next;
while((next>=0)&&(index<number))
{
a[index]=next;
index++;
cin>>next;
}
numberUsed = index;
}
int search(int a[],int number,int target)
{
int index = 0;
bool found = false;
while((!found)&&index<number)
{
if(target ==a[index])
found=true;
else
index++;
}
if(found)
return index;
else
return -1;
}
int main()
{
int as[largeLength],numberUsed,target;
char ans;
int result;
fillArray(as,largeLength,numberUsed);
cout<<"numberUsed的值为:"<<numberUsed<<endl;
do
{
cout<<"enter a number for search "<<endl;
cin>>target;
result = search(as,numberUsed,target);
if(result == -1)
cout<<"error。。。"<<endl;
else
cout<<target<<"is stored in array position "<<result<<endl;
cout<<"search again?"<<endl;
cin>>ans;
}while((ans!='N')&&(ans!='n'));
cout<<"The end"<<endl;
return 0;
}