2

ユーザーにいくつかの数字を入力してもらいたいだけです。数値が -1 の場合、プログラムは停止し、同じ数値を出力します。なぜそんなに難しいのですか?ここでロジックが機能しない理由がわかりません。

たとえば、ユーザーが次のように入力した場合:

1 2 3 -1 

プログラムは次のように出力するはずです: 1 2 3 -1

#include <iostream>

using namespace std;

int main()
{
    int input, index=0;
    int array[200];

    do
    {
        cin >> input;
        array[index++]=input;
    } while(input>0);

    for(int i=0; i < index; i++)
    {
        cout << array[index] << endl;
    }
}
4

1 に答える 1

6

これを変える

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

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

ユーザー入力のindexにすべての配列セルをプログラムに出力させる秒ループを使用しました。

また、-1あなたの状態であれば、それを変更する必要があります

} while(input>=0);
             ^^ 

それ以外の場合は0、ループも停止しますが、これはあなたが求めているものではありません。

于 2013-07-28T00:40:17.090 に答える