Langage c problème avec un exercice

Résolu
bonjour
un utilisateur doit encoder deux nombre et un opérateur et le programme fait le calcul correspondant au moyen des deux valeurs donnée voici le début de mon programme mais après je suis bloqué!
#include <stdlib.h>
#include <stdio.h>

void main (void)
{
int a,b,c;
printf("entrez premiere valeur:");
scanf("%d",&a);
printf("entrez deuxieme valeur:");
scanf("%d";&b);
printf("entrez operateur");
scanf("%d",&c);

/* 1=addition;
2=soustraction;
3=multiplication;
4=division; */

if ( c=1)
{
Configuration: Windows XP
Internet Explorer 6.0

7 réponses

  1. Modérateur
    Ouais mais bon normalement ce n'est pas à moi de faire tes exercices mon grand... Donc il faut quand même que tu cherches un minimum sinon ça va se voir. En plus dire "je ne l'ai pas vu en cours" ce n'est pas une vraie réponse car si tu adoptes ce genre de raisonnement en stage ou par la suite dans ton travail tu ne vas pas aller loin...

    Bonne chance
    3
    1. Bonjour,

      #include <stdlib.h>
      #include <stdio.h>

      int main ()
      {
      int a,b,c;
      float res;
      printf("entrez premiere valeur:");
      scanf("%d",&a);
      printf("entrez deuxieme valeur:");
      scanf("%d";&b);
      printf("entrez operateur");
      scanf("%d",&c);

      /* 1=addition;
      2=soustraction;
      3=multiplication;
      4=division; */
      if (c==1) res=a+b;
      else if (c==2) res=a-b;
      else if (c==3) res=a*b;
      else if (c==4) res=a/b;
      else {
      printf("Erreur de saisie");
      return (0);
      }
      printf("resultat : %f",res);
      }
      2
      1. bjr
        ma question es la suivante : manque _t_ il pas des accolades entre le if et le else ?? !!!
        0
    2. Modérateur
      Il manque le return 0; à la fin du main; et return n'est pas une fonction (mais une instruction) donc il n'y a pas de raison de mettre de parenthèse autour du 0 de return (0). Par ailleurs je trouve un peu anti pédagogique de lui donner la solution de son exercice (j'en avais à mon sens déjà beaucoup trop fait).
      2
      1. bsr, je debute en langage c , et j'ai un petit exo ou il faut utiliser des pointeurs, il s'agit de supprimer les occurrences des nombres multiples dans un tableau en tassant les elements restants .

        expl

        Tab1={10,12,15,10,6,12,5} le resultat est Tab1={10,12,15,6,5}

        merci d'avance.
        0
    3. Modérateur
      Voilà ce que tu peux faire :
      #include <stdio.h>
      
      int main(){
          int x,y,res;
          char c;
      
          // Lire les valeurs
          printf("operateur (+,-,*,/) ? ");
          c = getchar();
          printf("x ? ");
          scanf("%d",&x);
          printf("y ? ");
          scanf("%d",&y);
      
          // Calculer le résultat
          if     (c == '*') res = x * y;
          else if(c == '+') res = x + y;
          else if(c == '-') res = x - y;
          else if(c == '/') res = x / y;
          else{
              fprintf(stderr,"opérateur [%c] invalide !\n",c);
              return 1;
          }
      
          // Afficher le résultat
          printf("%d %c %d = %d\n",x,c,y,res);
          return 0;
      }

      Je te laisse adapter le programme pour que ça marche avec deux flottants. Si tu ne comprends pas certains points n'hésite pas à dire lesquels.

      Bonne chance
      1
      1. merci pour cet énoncé mais je n'ai pas encore appris les caractère et char, je dois utiliser des nombre!
        0
        1. C'est dingue tous ceux qui veulent que les gens résolvent leur exercice à leur place!!
          0
          1. Modérateur
            C'est vrai, et dans des sujets résolus et qui n'ont rien a voir :-)
            0