Il codice è il seguente:Funziona tutto tranne il ciclo while finale. Mi restituise sempre "carattere non valido" a prescindere che io inserisca come carattere "+" oppure "-"codice:#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { /* Ricevi in input da tastiera due valori e un carattere. I caratteri consentiti sono "+, -, *, /". Se il carattere è "+" somma i due numeri. Se è "-" sottraili. Se è "*" li moltiplica. Se è "/" dividili. Restituisci in output il risultato. */ int n1; int n2; char carattere; float risultato; printf("Inserisci numero 1: ",n1); scanf("%d",&n1); while (n1<=0){ printf("Numero 1 non valido. Inserisci un numero maggiore di 0: "); scanf("%d",&n1); } printf("Inserisci numero 2: ",n2); scanf("%d",&n2); while (n2<=0){ printf("Numero 2 non valido. Inserisci un numero maggiore di 0: "); scanf("%d",&n2); } printf("Inserisci carattere: "); scanf(" %c",&carattere); while(carattere="+"){ printf("Carattere non valido. Inserisci nuovo carattere: "); scanf(" %c",&carattere); } printf("Il carattere inserito non è '+'"); system("PAUSE"); return 0; }
Come mai?
Grazie in anticipo

Rispondi quotando


