è un errore già apparso quaOriginariamente inviato da jackazz
Ciao a tutti, ho un problma nella compilazione di una semplice calcolatrice a 4 operazioni, ecco il codice:
Quando lo compilo mi da degli errori, ma non riesco a capire quali.codice:#include <stdio.h> int main(int argc, char **argv) { int a, b, addizione, sottrazione, moltiplicazione, divisione; char operatore; printf("Inserisci il primo numero: ", a); scanf("%d", &a); printf("\n\nInserisci il secondo numero: ", b); scanf("%d", &b); printf("\n\n Inserisci l'operatore (+ - * /): ", operatore); scanf("%d", &operatore); addizione = a + b; sottrazione = a - b; moltiplicazione = a * b; divisione = a / b; if (operatore==+){ printf("\nRISULTATO: %d", addizione);} if (operatore==-){ printf("\nRISULTATO: %d", sottrazione);} if (operatore==*){ printf("\nRISULTATO: %d", moltiplicazione);} if (operatore==/){ printf("\nRISULTATO: %d", divisione);} return 0; }
Errori:
Come IDE uso Geany (Ubuntu)codice:nome_file.c:25:18: error: expected expression before ‘)’ token nome_file.c:27:18: error: expected expression before ‘)’ token nome_file.c:29:18: error: expected expression before ‘)’ token nome_file.c:31:17: error: expected expression before ‘/’ token Compilazione fallita.
devi capire la differenza tra
+ - / *
che sono OPERATORI del linguaggio e
'+' '-' '/' '*'
che invece sono char, e sono quelli che fanno al caso tuo e devono finire negli if
inoltre nella scanf devi usare il %c per leggere i char, non il %d
in aggiunta mi chiedo perché hai messo quei parametri aggiuntivi nelle printf. Non servono ne c'è motivo per inserirli. Anche perché, pur volessi stamparli (e devi usare la notazione apposita) in quel momento non sono nemmeno inizializzati, quindi avresti risultati di visualizzazione non prevedibili

Rispondi quotando