3

我根本无法弄清楚如何正确输出数字。我知道这与我如何拥有 cout 有关,但我无法弄清楚它到底是什么。

#include <iostream>
using namespace std;

int main()
{
const int size = 10;
int values[size];

cout << "Please enter up tp 10 positive numbers." << endl;

for (int i=0; i < size; i++)
{
    cin >> values[i];
}

    cout << endl;
    cout << values[size];



system("pause");
return 0;

}
4

6 回答 6

10

这里有一个提示:要打印出数字,您需要使用循环。

于 2013-09-20T14:25:34.087 回答
1
#include <iostream>
using namespace std;

int main()
{
const int size = 10;
int values[size];

cout << "Please enter up tp 10 positive numbers." << endl;

for (int i=0; i < size; i++)
{
    cin >> values[i];
}

    cout << endl;
for (int i=0; i < size; i++)
{
    cout << values[i]<<endl;
}



system("pause");
return 0;

}
于 2013-09-20T14:26:48.097 回答
0

当您打印出值时,您需要在下面放置另一个 for 循环。目前,您仅在阵列的位置 SIZE 处计算数字。这是最后一个值。

尝试这样的事情:

cout << "Your values are :" << endl;
for (int j=0; j < size; j++)
{
    cout << values[j] << " ";
}
于 2013-09-20T14:27:03.087 回答
0

利用

for (int i=0; i < size; i++)
{
    cout << values[i];
}

快乐学习:)

于 2013-09-20T14:28:06.490 回答
0

您需要另一个循环来输出您的值:

// Read Values
for (int i=0; i < size; i++)
{
    cin >> values[i];
}

// Print Values
for (int i=0; i < size; i++)
{
    cout << values[i];
}

cout << values[size];
于 2013-09-20T14:28:44.647 回答
0

无法同时接收所有输入并打印。为此,您必须使用 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, " "));
}
于 2013-09-20T14:39:21.753 回答