Résultat exécution bizarre C

Résolu/Fermé
hdiama Messages postés 188 Date d'inscription vendredi 24 octobre 2008 Statut Membre Dernière intervention 2 janvier 2012 - 9 oct. 2009 à 01:22
Dragonmastertran Messages postés 174 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 6 octobre 2013 - 9 oct. 2009 à 02:00
Bonjour,
Voici le programme que j'ai écrit:

#include<stdio.h>

int main()
{
double a, b, s;

printf("A= ");
scanf("%f", &a);
printf("B= ");
scanf("%f", &b);

s=a+b;

printf("s=%f\n", s);

return 0;
}

A l'exécution: n'importe quelles valeurs affectées à a et b, j'ai s=0.0000000
je comprends rien, quelqu'un pour m'expliquer please?
Merci d'avance

10 réponses

Dragonmastertran Messages postés 174 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 6 octobre 2013 10
9 oct. 2009 à 01:37
bonjour, il faudrait que tes variales au début soit à 0.

genre :

long a = 0 , b = 0 , s = 0;

sinon, la valeur des variable serait mélangé

et puis, il te faut les bibliotheque de données.

#include <stdlib.h>
#include <math.h>
0
hdiama Messages postés 188 Date d'inscription vendredi 24 octobre 2008 Statut Membre Dernière intervention 2 janvier 2012 6
9 oct. 2009 à 01:39
Tu veux dire que je dois les initialiser à 0 au début? Si c'est ça, ça ne marche pas.
0
Dragonmastertran Messages postés 174 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 6 octobre 2013 10
9 oct. 2009 à 01:41
Je viens de 'essayer, ça marche... à moins qu'il y ait une autre erreur dans le tien que je n'ai pas encore vu...
0
hdiama Messages postés 188 Date d'inscription vendredi 24 octobre 2008 Statut Membre Dernière intervention 2 janvier 2012 6
9 oct. 2009 à 01:43
Si ça marche chez toi, alors le problème n'est pas dans le programme, non?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Dragonmastertran Messages postés 174 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 6 octobre 2013 10
9 oct. 2009 à 01:45
ok, j'ai trouvé,

tu ne peux pas mettre

("%f", &b)

mais plutot

("%ld", &b)

car c'Est un nombre que tu veux
0
hdiama Messages postés 188 Date d'inscription vendredi 24 octobre 2008 Statut Membre Dernière intervention 2 janvier 2012 6
9 oct. 2009 à 01:49
ça marche pour les petits nombres, c'est déjà ça!
mais lorsque j'ai mis une grande valeur, le 0 a refait son show!
0
Dragonmastertran Messages postés 174 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 6 octobre 2013 10
9 oct. 2009 à 01:51
une grande valeur? grande comment ? dans les millions ou plus?
0
hdiama Messages postés 188 Date d'inscription vendredi 24 octobre 2008 Statut Membre Dernière intervention 2 janvier 2012 6
9 oct. 2009 à 01:53
oui, 25 milliards!!!! chui obligé c'est demandé dans l'exo!
0
hdiama Messages postés 188 Date d'inscription vendredi 24 octobre 2008 Statut Membre Dernière intervention 2 janvier 2012 6
9 oct. 2009 à 01:57
A la place de ld, j'ai mis lf, et ça marche! Merci Dragonmastertran pour ton aide, j' y serai pas arrivé sans toi :)
0
Dragonmastertran Messages postés 174 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 6 octobre 2013 10
9 oct. 2009 à 02:00
de rien, ça fait plaisir d'aider
0