ragazzi ho appena iniziato a studiare C.... e mi trovo su questo scoglio che non riesco a superare... ho fatto un piccolo programma con cui calcoli area e circ del cerchio tramite menù... è incompleto perchè purtroppo come da consegna per il compito devo usare "double" però le operazioni non mi risultano! facendo la circonferenza mi da 0 all'operazione! usando %f...usando %d funziona ma naturalmente non mi da i numeri con la virgola!
dove sbaglio?
codice:#include <stdio.h> #include <math.h> void area( double ); void circonferenza (double); int main (void) { double raggio=0; int cifrascelta=0; printf ("digitare raggio circonferenza: "); scanf ("%f" , &raggio); printf ("\n digita: \n [1]per calcolare la circonferenza\n [2]per calcolare l'area\n"); scanf ("%d", &cifrascelta); if (cifrascelta==1) { printf ("la circonferenza del cerchio e:"); circonferenza(raggio); } if (cifrascelta==2) { printf ("l area del cerchio è: "); area(raggio); return 0; } } void area (double raggio ){ float area=0; float pigreco=3.14; area=raggio*raggio*pigreco; printf ("l'area is: %.2f", area); } void circonferenza ( double raggio ) { double circonferenza; double pigreco=3.14; circonferenza= raggio*2*3.14; printf(" %.f" ,circonferenza); }

Rispondi quotando

