无法同时接收所有输入并打印。为此,您必须使用 2 个 for 循环。一个读取输入,另一个打印数组元素。
如果你想用更少的代码做到这一点,你可以使用 C++ 中的 STL。有向量,LinkedLists,队列。
它们就像一个数组,但您不必为元素分配内存。
您只需编写vector <int> myVector;
为向量分配内存,然后每次将元素添加到向量中时,它都会自行分配一个位置。您无需担心分配问题。
要添加一个元素,我认为有一个名为“backInsert(object x)”的函数,该函数将新元素添加到向量的 and 中。
x.backInsert(userInput); // user input is an integer
要打印矢量,您可以使用它
void printVector(const vector<int> &v)
{
std::copy(v.begin(), v.end(),
std::ostream_iterator<int>(std::cout, " "));
}
编辑:这是一个简单的程序
#include <iostream>
#include <vector>
#include <iterator>
void main()
{
std::vector<int> x;
for (int i = 0; i < 10; i++)
x.push_back(i+1);
std::cout << "vector elements: \n";
std::copy(x.begin(), x.end(),
std::ostream_iterator<int>(std::cout, " "));
}