Salve a tutti e grazie per avermi accettato nel vostro forum.
Mi presento: sono uno studente di ingegneria, sto iniziando a programmare in C e avrei bisogno di un'aiuto.
In un esercizio devo scrivere una funzione che mi calcoli il massimo di un array di float. Ho scritto il codice ma il valore che mi restituisce è l'ultimo del vettore e non il massimo. Dove ho sbagliato?
#include<stdio.h>
#include<stdlib.h>
float max(float *, int );
main(){
float A[]={1,10,3,4,9,57,22,5};
float *ptr_A;
int N;
ptr_A=A;
N=sizeof(A)/(sizeof(float));
printf("Il massimo dei numeri nel vettore e':%f", max(ptr_A,N));
}
float max(float *ptr_A, int N){
float max;
unsigned int i;
max=ptr_A[0];
for(i=1;i<N;i++){
if(ptr_A[i]> max);
max=ptr_A[i];
}
return max;
}
Vi ringrazio in anticipo !!