Problema con programma in C

di il
2 risposte

Problema con programma in C

Salve a tutti, mi sono appena registrato al forum in quanto sto avendo dei problemi con alcuni programmi scritti in c.
questo è uno dei programmi in questione:
#include <stdio.h>

int main()
{
float a, b;

    printf("Questo programma consente di trasformare un valore inserito in gradi fahrenheit in gradi Celsius\n\n");
    printf("\n\nInserisci il valore in gradi fahrenheit da trasformare in Celsius\n\n");
    scanf("%f",&a);
    b=0;
        b=(a-32)/1.8;
    printf("%f far sono %f gradi Celsius",&a,&b);
}
il problema sta nel fatto che, invece di stampare il numero inserito attraverso lo ''scanf'', il programma stampa un numero negativo moplto piccolo e assolutamente indipendente dai dati che richiedo. infatrti come risultato stampa ad esempio : -1.45435 far sono -1.49874 gradi celsius.
Potete aiutarmi? ho lo stesso problema con il seguente programma:
#include <stdio.h>

int main(void)
{
int scelta;
float a, b, somma, c, d,differenza;

    printf("questo programma ti permette di fare somme o diferenze tra 2 soli numeri\n Ora scegli quale operazione fare:\n digita \n 1 per ADDIZIONE\n oppure\n 2 per SOTTRAZIONE\n");
    scanf("%d",&scelta);
    switch(scelta)
    {
    case 1:
    printf("inserisci addendo 1\n\n");
    scanf("%f",&a);
    printf("inserisci addendo 2\n\n");
    scanf("%f",&b);
        somma=b+a;
    printf("il risultato è: %i \n", &somma);
    break;

    case 2:
    printf("inserisci sottraendo\n\n");
    scanf("%f", &c);
    printf("inserisci minuendo\n\n");
    scanf("%f", &d);
    differenza=c-d;
    printf("il risultato è: %i \n", &differenza);
    break;
    default: printf("fine del programma");
    break;
    }

}
Grazie dell'udienza, attendo risposte e soluzioni

2 Risposte

Devi accedere o registrarti per scrivere nel forum
2 risposte