思路简析
思路不复杂,但是有几个地方需要注意,下面提供两种解法:
解法一:
- 由于不知道具体输入几个数,使用vector来存储输入的数字,便于动态增加。为了统一数组下标和数字出现次数,将容器第一个元素(下标为0)的值设为0。
- 使用while来循环,循环条件设为true,当nums[i] == 250 时,跳出循环,输出下标。
解法二:
转自(https://blog.csdn.net/mizifor666/article/details/107322380)
- 这里的循环条件变为判断是否输入完,whiel (cin >> num), 代码要更加简洁一
解法代码
解法一
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> nums(1, 0);
int i = 1;
while (true) {
int num;
cin >> num;
nums.push_back(num);
if (nums[i] == 250) {
cout << i;
break;
}
i++;
}
return 0;
}
解法二
#include <iostream>
using namespace std;
int main()
{
int num;//录入的数字
int k=0;//计数
while(cin>>num)
{
k++;
if(num==250)
break;
}
cout<<k;//输出
return 0;
}