C : scanf et float, valeur retournée = 0 ?
Résolu
bionicleman
Messages postés
36
Date d'inscription
Statut
Membre
Dernière intervention
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Bonsoir,
j'ai un soucis avec la fonction "scanf" et les variables de type "float".
lors de mon scanf (qui doit récupérer un float) j'entre par exemple "36." et la valeur récupérée est 0.
j'ai testé plusieurs façon d'écrire mon programme, différentes valeurs... mais rien n'y fait.
Voilà mon code ;-)
//déclaration des variables
float r;
//initialisation des variables
scanf("%lf",&r); //testé avec des entiers, flottants
printf("%f\n",r); //le printf me renvoie soit 0.000.. soit -0.000... soit... plusieurs miliards =X
En espérant avoir fait une erreur basique =D
Merci d'avance ;-)
[Edit]
scanf("%lf",&r); //à supprimer.. merci encore ;-P
/Edit
j'ai un soucis avec la fonction "scanf" et les variables de type "float".
lors de mon scanf (qui doit récupérer un float) j'entre par exemple "36." et la valeur récupérée est 0.
j'ai testé plusieurs façon d'écrire mon programme, différentes valeurs... mais rien n'y fait.
Voilà mon code ;-)
//déclaration des variables
float r;
//initialisation des variables
scanf("%lf",&r); //testé avec des entiers, flottants
printf("%f\n",r); //le printf me renvoie soit 0.000.. soit -0.000... soit... plusieurs miliards =X
En espérant avoir fait une erreur basique =D
Merci d'avance ;-)
[Edit]
scanf("%lf",&r); //à supprimer.. merci encore ;-P
/Edit
1 réponse
Salut,
Effectivement, t'as fait une erreur basique ;-)))
scanf("%lf",&r); //testé avec des entiers, flottants
Tu mets lf alors que ta variable est un float.
Deux solutions :
En double :
Ou alors en float :
Cdlt
Effectivement, t'as fait une erreur basique ;-)))
scanf("%lf",&r); //testé avec des entiers, flottants
Tu mets lf alors que ta variable est un float.
Deux solutions :
En double :
//déclaration des variables double r; //initialisation des variables scanf("%lf",&r); //testé avec des entiers, flottants printf("%f\n",r); //le printf me renvoie soit 0.000.. soit -0.000... soit... plusieurs miliards =X
Ou alors en float :
//déclaration des variables float r; //initialisation des variables scanf("%f",&r); //testé avec des entiers, flottants printf("%f\n",r); //le printf me renvoie soit 0.000.. soit -0.000... soit... plusieurs miliards =X
Cdlt