尝试让用户使用for循环输入10个值。 “<”在count和Values之间出现错误。为什么呢?
void UserNums() {
int Values[10]; //creating array to hold values
int count; //Loop counter
cout << "Please enter 10 random numbers!" << endl;
for (count = 0; count < Values; count++) {
cout << "Number " << (count + 1) << ":" << endl;
cin >> Values[count];
}
}
答案 0 :(得分:2)
你在代码中犯了一个简单的错误。 变量Values是一个整数数组。 您应该使用任何值而不是值,或者在代码中进行以下更改。
void UserNums() {
int Values[10]; //creating array to hold values
int count; //Loop counter
cout << "Please enter 10 random numbers!" << endl;
for (count = 0; count < Values.size(); count++) {
cout << "Number " << (count + 1) << ":" << endl;
cin >> Values[count];
}
}
以上代码可以正常使用。
您还可以使用以下代码替换10循环数组的循环。
for (count = 0; count < 10; count++) {
cout << "Number " << (count + 1) << ":" << endl;
cin >> Values[count];
}
答案 1 :(得分:1)
for (count = 0; count < 10; count++)
将无效,因为变量count的类型为int,而Values是一个数组。如果您尝试遍历大小为10的数组中的每个元素,则以下语句应该有效
{{1}}
答案 2 :(得分:0)
for (int count = 0; count < 10; count++) {
cout << "Number " << (count + 1) << ":" << endl;
cin >> Values[count];
}
很明显,您正试图遍历阵列中的每个元素。 count < Values
将不起作用,因为您正在将int与整个数组进行比较。只需在for
循环条件中使用您为数组大小指定的数字。
答案 3 :(得分:0)
如果您的项目支持c ++ 11,我认为以下方法非常好:
array<int,10> Values;
cout << "Please enter 10 random numbers!" << endl;
for(int count = 0; count < Values.size() ;count++){
cout << "Number " << (count + 1) << ":" <<endl;
cin >> Values[count];
}
答案 4 :(得分:0)
需要C ++ 11
声明一次所需的值数。
constexpr int numValues = 10;
如果需要固定大小的数组,请使用std :: array
array<int, numValue> Values; //creating array to hold values
int count = 1; //Loop counter
使用数组的大小以防万一。
cout << "Please enter " << Values.size() << " random numbers!" << endl;
使用新的和改进的for循环。
for (auto & val : Values) {
cout << "Number << count++ << ": ";
cin >> val; // real programs usually checks if it is a valid number or a number at all
}