我有一阵列,追踪三个平行阵列的调查结果。 平行阵列是名称、id#和余额。 姓名与补贴和平衡有关,因为它们都有相同的指数。 用户查询姓名和节目应将搜索结果输出到有名称、背书和平衡的文本档案中。 因此,现在每当搜索成功时(名字出现在阵列),我就把该名字的索引添加到称为成果的阵列中。 与此类似:
while(searchTerm != "done")
{
searchResult = SearchArray(searchTerm, AR_SIZE, namesAr);
if(searchResult == -1)
{
cout << searchTerm << " was not found.
";
}
else
{
cout << "Found.
";
resultsAr[index] = searchResult;
index++;
}
cout << "
Who do you want to search for (enter done to exit)? ";
getline (cin,searchTerm);
} // End while loop
我可以说明如何做到这一点,但只有产出所找到的名字。 我现在就这样做了:
outFile << fixed << setprecision(2) << left;
outFile << setw (12) << "Id#" << setw(22) << "Name" << "Balance Due"
<< endl << endl;
for(index = 0; index < sizes; index++)
{
outFile << left << setw (10) << idsAr[index] << setw(22) << namesAr[index]
<< setw(3) << "$";
outFile << right << setw(10) << balancesAr[index] << endl;
}
但显然,这只是整个阵列。 我可以做些什么,只会产生结果。 Ar.
Thanks, and this is homework, so no exact answers, that would be just terrible.
EDIT:资本化问题确实是一个问题,我只是偶然地在我这里上台时,对此表示怀疑。 成果 一部分人正在工作,因为在搜索阵列的内容之后,是我所搜寻名字的索引。 “搜索卫星”功能类似:
int SearchArray(string searchTerm,
int size,
string namesAr[])
{
// Variables
int index;
bool found;
// Initialize
index = 0;
found = false;
while(index < size && !found)
{
if(namesAr[index] == searchTerm)
{
found = true;
}
else
{
index++;
}
}
if(found)
{
return index;
}
else
{
return -1;
}
}