Ciao ragazzi è un po' che non ci si sente . Ora che ho di nuovo un po' di tempo ho ripreso il C da dove mi ero fermato e ho cominciato il capitolo sulle funzioni.
E' un problema davvero banale (non x me XD), è evidente che nn ho capito bn il ragionamento.
L'es mi chiede di prendere in input un numero e di arrotondarlo all'intero più vicino.
Questo è il codice che ho scritto
#include <math.h>
#include <stdio.h>
int arrotonda (float y); /*la funzione arrotonda riceverà una copia di x nel parametro y*/
int main (void) {
float x;
printf("Inserisci un numero: ");
scanf("%f", &x);
printf("Il numero originale e %d\n", x);
printf("Il numero arrotondato è %d", arrotonda(x));
fflush(stdin);
getchar();
return 0;
}
int arrotonda (float y) {
y= floor (x + .5);
return (y);
}
quando compilo mi dice che non ho dichiarato x nella funzione non main.
Perchè devo dichiararla,cioè la funzione arrotonda non dovrebbe ricevere il valore di x nel parametro y e restituire il valore modificato?