Se connecter avec
S'enregistrer | Connectez-vous

Probleme saut de ligne avec scanf

Dernière réponse : dans Programmation

bonjour tous le monde,je suis debutant en c j'ai un probleme de saut de ligne avec la fonction scanf j'arrive pas a le resoudre,si quelqu'un peut m'aider,voila le code.et merci.
  1. #include <stdio.h>
  2. #include <conio.h>
  3.  
  4. main()
  5. {
  6. float note1,note2,note3,coefficient,note_finale,note_finale1,note_finale2,note_finale3,moyenne_generale;
  7. printf("Matiere");
  8. printf("\t Note/20");
  9. printf("\tCoefficient");
  10. printf("\tNote finale");
  11. printf("\n\nMath\t ");
  12. scanf("%f",&note1);
  13. printf("\t\t\t");
  14. printf("2\t\t");
  15. note_finale1=note1*2;
  16. printf("%.2f",note_finale1);
  17. printf("\n\nphysique ");
  18. scanf("%f",&note2);
  19. printf("\t");
  20. printf("\t\t1\t\t");
  21. note_finale2=note2;
  22. printf("%.2f",note_finale2);
  23. printf("\n\njava\t ");
  24. scanf("%f",&note3);
  25. printf("\t\t\t");
  26. printf("3\t\t");
  27. note_finale3=note3*3;
  28. printf("%.2f",note_finale3);
  29. note_finale=note_finale1+note_finale2+note_finale3;
  30. coefficient=6;
  31. moyenne_generale=note_finale/coefficient;
  32. printf("\n\nla moyenne generale est : %.2f/20 ",moyenne_generale);
  33.  
  34.  
  35. getch();
  36. }

Autres pages sur : probleme saut ligne scanf

Lassé par la pub ? Créez un compte

crazycat@idn a dit :
Quel est exactement le souci ?


tout d'abord merci pour votre reponse,enfaite quand j'execute le code je recois sur l'ecran :

  1. matiere note/20 coefficient note finale
  2.  
  3. math 17
  4. 2 34
  5.  
  6. physique 14
  7. 1 14
  8.  
  9. java 15
  10. 3 45
  11.  
  12.  
  13. la moyenne generale est : 15.5/20


moi par exemple je veux 17 a cote de 2 et 34 a cote de 2 sur la meme ligne 3 et puis la meme chose 14 a cote de 1 et 1 a cote de 14 et enfin 15 a cote de 3..................etc
Expert Programmation

Je pense que le souci est plus dans la façon dont tu fonctionnes.
Ce n'est pas scanf() qui est en cause.

Pour empécher ça de manière simple, tu as 2 possibilités:
- chaque fois qu'une valeur est entrée, effacer l'affichage et le refaire (avec quelques ifs)
- faire ton script en deux parties: entrée des données puis affichage du tableau complet.

J'imagine que des personnes qui s'y connaissent mieux en C pourront t'aider à te replacer juste après les notes entrées, mais ce n'est pas à ma portée.

crazycat@idn a dit :
Je pense que le souci est plus dans la façon dont tu fonctionnes.
Ce n'est pas scanf() qui est en cause.

Pour empécher ça de manière simple, tu as 2 possibilités:
- chaque fois qu'une valeur est entrée, effacer l'affichage et le refaire (avec quelques ifs)
- faire ton script en deux parties: entrée des données puis affichage du tableau complet.

J'imagine que des personnes qui s'y connaissent mieux en C pourront t'aider à te replacer juste après les notes entrées, mais ce n'est pas à ma portée.

merci bcp.jai essayé mais ca marche po
Expert Programmation

Comme le dit CrazyCat, fait ton script en 2 parties : tu demandes les notes sans faire de tableau, et une fois fini, tu affiches le tableau.
Après, pour la position des notes, ça dépend de la taille de ce que tu affiches. Je te suggère de ne pas utiliser de tabulation, mais des espaces (en calculant le nombre d'espaces nécessaire pour les alignements).
Lassé par la pub ? Créez un compte
Tom's guide dans le monde