Aide en C

Résolu/Fermé
cris93380 Messages postés 110 Date d'inscription jeudi 15 novembre 2007 Statut Membre Dernière intervention 12 mars 2012 - 4 déc. 2011 à 19:38
JooS Messages postés 2468 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 8 juin 2016 - 4 déc. 2011 à 20:31
Bonsoir , j'aurais besoin d'une toute petite aide
Je commence a programmer en C mais je bloque
je vous montre les lignes de code :

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

int main()
{
    int nombre1 , nombre2 , total;
    char choix;
    printf("\tBienvenue dans le programme calculatrice\n\n Menu\n\n");
    printf(" 1 - Addition\n 2 - Soustraction\n 3 - Multiplication\n 4 - Division\n\n");
    scanf("%s", &choix);
    if (choix == 1)
    {
        printf("Entrez deux nombres\n");
        scanf("%d\n",nombre1);
        scanf("%d\n",nombre2);
        total = nombre1 + nombre2;
        printf("Le resultat est %d", total);
    }
}


J'ai mis en gras le probleme , enfaite je voudrais que si j'entre 1 au clavier , il entre dans la condition if , mais comment l'ecrire? Merci

2 réponses

KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
4 déc. 2011 à 19:42
Comme ça c'est bien, mais avant utilises int choix, et scanf("%d",&choix)
0
cris93380 Messages postés 110 Date d'inscription jeudi 15 novembre 2007 Statut Membre Dernière intervention 12 mars 2012
4 déc. 2011 à 19:51
Ah oui j'avais utilisé des lettres avant , si je remet les choix A B .. Je devrais ecrire quelle condition?
Merci
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
4 déc. 2011 à 19:54
Si c'est vraiment des lettres. Il vaut mieux faire char choix[3]; scanf("%s",&choix) if (s[0]=='A');
Remarque : je mets choix de taille 3 car il devrait contenir {'A','\n','\0'} (en supposant que je tapes A)
0
JooS Messages postés 2468 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 8 juin 2016 228
Modifié par JooS le 4/12/2011 à 20:31
Sinon ...
char choix[2];
et

scanf("%c",carr); // pour prendre un seul caractere  
getchar (); // pour vider le buffer, or, supprimer le \n

ou

scanf("%1s",carr); // pour prendre en considération que la première lettre entrée
0