【发布时间】:2015-01-21 22:56:35
【问题描述】:
所以我试图让用户提供两个向量的元素,但使用 while (cin >> ..) 会使我的程序崩溃。这是我目前所拥有的:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
size_t size = 4; int i;
vector<int> product;
vector<int> v1;
vector<int> v2;
int input, input2;
cout << "Enter values for first vector: ";
while (cin >> input) {
v1.push_back(input);
}
cout << "Enter values for second vector: ";
while (cin >> input2) {
v2.push_back(input2);
}
int result = 0;
if (size >= 1) {
result += v1[0]*v2[0];
for (int i = 1; i < size; ++i)
result -= v1[i]*v2[i];
}
cout << result << endl;
return 0;
}
用户必须为第一个向量输入 N 个元素,为第二个向量输入另一个 N 个元素。但是,我不能跳过读取直到 EOF 的用法,因为我不知道用户想要在每个向量中存储多少元素。
【问题讨论】:
-
那么你的问题将如何计算第二个向量的开始?
-
@P0W,当我第一次输入后 Ctrl+Z 时?
-
不是重复的。那里的建议对我不起作用。
-
那么有人可以帮忙吗?或者我应该接受
Another poor soul评论吗?
标签: c++