Maison >développement back-end >C++ >Comment stocker plusieurs entrées utilisateur dans un vecteur en C ?

Comment stocker plusieurs entrées utilisateur dans un vecteur en C ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-29 04:27:02484parcourir

How to store multiple user inputs in a vector in C  ?

Comprendre le stockage des entrées utilisateur dans les vecteurs

En C, un vecteur est un tableau dynamique qui peut stocker efficacement une collection d'éléments. Lorsqu'il s'agit de stocker les entrées de l'utilisateur dans un vecteur, le processus implique d'utiliser le flux std::cin pour lire les entrées de la console et de les insérer dans le vecteur à l'aide de la méthode std::vector::push_back().

Structure du code

Considérez l'extrait de code suivant :

<code class="cpp">#include <iostream>
#include <vector>

using namespace std;

template <typename T>
void write_vector(const vector<T>& V)
{
   cout << "The numbers in the vector are : ";
   for (int i=0; i < V.size(); i++)
      cout << V[i] << " ";
}

int main()
{
  int input;
  vector<int> V;
  cout << "Enter your numbers to be evaluated: ";
  cin >> input;
  V.push_back(input);
  write_vector(V);
  return 0;
}</code>

Explication du problème

Dans ce code, le un seul numéro est lu sur la console et stocké dans le vecteur. La fonction write_vector() imprime ensuite le vecteur, affichant uniquement le premier nombre saisi.

Solution

Pour résoudre ce problème, une boucle peut être introduite pour lire en continu les entrées de cin jusqu'à ce que l'utilisateur entre une valeur non numérique, un caractère EOF ou une valeur sentinelle spécifiée.

<code class="cpp">int main()
{
  int input;
  vector<int> V;

  cout << "Enter your numbers to be evaluated (Enter any non-numeric character to stop): ";
  while (cin >> input)
     V.push_back(input);

  return 0;
}</code>

En utilisant une boucle, le code lira plusieurs entrées et les stockera dans le vecteur, permettant la fonction write_vector() pour imprimer tous les nombres saisis.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn