【发布时间】:2017-03-06 22:22:28
【问题描述】:
本周家庭作业我的任务是加载一个包含 1,000 个数字的文本文件,并对用户输入的数字进行线性搜索。我已经完成了线性搜索部分,但我必须找到并打印该整数的最后一次出现。我认为从最后运行数组并打印最后一次出现并中断循环是最简单的。我已经启动了代码,但是在找到最后一次出现时遇到了一些麻烦。
我知道我的第二个 for 循环 向后运行数组是错误的,我只是不确定它有什么问题。任何帮助表示赞赏!谢谢!
#include <iostream>
#include <fstream>
#include <conio.h>
using namespace std;
int main()
{
ifstream input("A1.txt");
int find;
cout << "Enter a number to search for: ";
cin >> find;
if (input.is_open())
{
int linSearch[1000];
for (int i = 0; i < 1000; i++)
{
input >> linSearch[i];
for (i = 1000; i > 0; i--)
{
if (find == linSearch[i])
{
cout << find << " is at position " << i << ". " << endl;
}
}
}
}
_getch();
return 0;
}
【问题讨论】:
-
提示:
int[1000]中的最后一个索引是什么? -
我现在明白了。谢谢! @Beta
标签: c++ linear-search