Bonjour,

Je commence le C et j'ai un problème sur un calcul basique de flottants. J'ai beau cherché je ne vois pas l'erreur.
Le but de mon programme est qu'un client envoie des chiffres à un serveur qui lui doit calculer le résultat de l'opération. Ca marche très bien avec des entiers mais quand je passe au flottant ca ne marche plus !
Voici un bout de mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
    char operateur;
    int nbvalue;
    float numero1, numero2;
    nbvalue = sscanf(data, "%*s %c %f %f", &operateur, &numero1, &numero2);
    printf("%c %f %f \n",operateur, numero1, numero2);
    if (nbvalue != 3) { printf("erreur lecture \n");}
    switch (operateur) {
    case '+':   
    {
      float som = somme(numero1,numero2);
      printf("%.2f",som);
      break;
    }
Et la fonction censé me faire le calcul :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
float somme(num1, num2){  
      float addi = num1 + num2; 
      return addi;
}
Lorsque j'affiche mes flottants avant le calcul j'ai bien deux nombres flottants par exemple 9.500000 1.000000 mais en résultat je trouve 675619456.00. Pourquoi il m'affiche ce résultat ??

Merci pour votre aide !