2013-07-28 4 views
2

Je veux juste que l'utilisateur entre des nombres. Si le nombre est -1, le programme s'arrête et sort ensuite ces mêmes numéros. Pourquoi est-ce aussi difficile? Je ne comprends pas pourquoi la logique ne fonctionne pas ici.C++: Stockage des entrées utilisateur

Par exemple, lorsque les types d'utilisateurs:

1 2 3 -1 

Le programme devrait ensuite imprimer: -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; 
    } 
} 
+0

Quelle est la question? p.s. Vous devriez ajouter un 'return 0' à la fin de' main() ' –

+0

Qu'est-ce qui ne fonctionne pas comme prévu? – usr2564301

+0

Lorsque je tape 1 2 3 -1. Je ne retrouve pas ces chiffres. – Person

Répondre

7

Modifier cette

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

Au

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

Vous avez utilisé index à la boucle provoquant votre programme seconde pour imprimer tous après l'entrée utilisateur de la cellule de tableau.

En outre, si -1 est votre état, vous devez le changer pour

} while(input>=0); 
      ^^ 

Sinon, aussi 0 arrêtera la boucle, ce qui est pas ce que vous demandez.

+0

merci je devenais vraiment frustré et ensuite vu votre commentaire. ouf – Person

Questions connexes