J'essaie de lire un nombre inconnu d'entrées en utilisant la fonction scanf
.Accepter un nombre quelconque d'entrées de la fonction scanf
int a[100];
int i = 0;
while((scanf("%d", &a[i])) != '\n')
i++;
// Next part of the code
Mais cette fonction ne va pas à la prochaine partie du code, il semble qu'il y ait une boucle while infinie.
Comment résoudre cette erreur logique? Existe-t-il d'autres alternatives à scanf
comme sscanf
pour lire des entiers dans un tableau?
Comment voulez-vous marquer la fin de l'entrée? –
Supposons que l'utilisateur commence à entrer une liste de nombres disons 10 espace 20 espace 30 et après qu'ils ont fini d'entrer ils doivent appuyer sur la touche entrée pour sortir de la boucle – user2147954
Valeur de retour de scanf est le nombre d'éléments d'entrée correspondant et attribué , qui peut être inférieur à ce qui est prévu, voire zéro en cas de défaillance précoce. Donc, la comparaison avec '\\ n' n'est pas correcte. – uba