我的任務是:創建一個方法來搜索一個值的無序整數數組, 如果找到該值,返回它在數組中的位置的索引,如果未找到,則返回-1。無序數組線性搜索C++
它只是找到我輸入的數字,如果它在索引0,否則它說它找不到。我不確定出了什麼問題,當我初始化自己的數組時,它正在工作,但現在不會,因爲我有用戶創建自己的數組。
任何幫助將是偉大的!謝謝!
到目前爲止,我的代碼是:
#include <iostream>
using namespace std;
//SearchArray prototype
int SearchArray(int arInt[], int elementAmount, int intSearched);
int main()
{
int arInt[50];
int elementAmount;
int intSearched = 0;
int i;
cout << "How many elements would you like to add to your array?\n";
cin >> elementAmount;
for(i = 0; i < elementAmount; i++)
{
cout << "Enter Number: ";
cin >> arInt[i];
}
cout << "Search array for integer:\n";
cin >> intSearched;
//Call search array method
SearchArray(arInt, elementAmount, intSearched);
system("pause");
return 0;
}
int SearchArray(int arInt[], int elementAmount, int intSearched)
{
int i;
bool foundInt = false;
for (i=0; i < elementAmount; i++)
{
if(arInt[i] == intSearched)
{
foundInt = true;
cout << "Integer was found in array at index " << i << endl;
}
else if (!foundInt)
{
cout << "Integer was not found in array\n";
system("pause");
return -1;
}
}
}
爲什麼'SearchArray'方法中沒有任何代碼? – unrealsoul007
當你在調試器下運行時會發生什麼? –
除了其他所有內容外,此代碼還存在非常危險的錯誤 - SearchArray在數組中找到元素時不會返回值。 – SergeyA