Massimo di un vettore con una funzione

di il
3 risposte

Massimo di un vettore con una funzione

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 !!

3 Risposte

  • Re: Massimo di un vettore con una funzione

    L'errore è nella riga

    if(ptr_A> max);

    perché il ; finale NON ci vuole.

    Incidentalmente, le righe

    float *ptr_A;
    ptr_A=A;

    sono inutili e le puoi eliminare perché puoi scrivere direttamente

    printf("Il massimo dei numeri nel vettore e':%f", max(A, N));
  • Re: Massimo di un vettore con una funzione

    oregon ha scritto:


    L'errore è nella riga

    if(ptr_A> max);

    perché il ; finale NON ci vuole.

    Incidentalmente, le righe

    float *ptr_A;
    ptr_A=A;

    sono inutili e le puoi eliminare perché puoi scrivere direttamente

    printf("Il massimo dei numeri nel vettore e':%f", max(A, N));


    Grazie mille oregon!!
    Come ho scritto sono un neofita e chiedo venia!

    Grazie ancora per avermi accettato
  • Re: Massimo di un vettore con una funzione

    Nessun problema ... buono studio.
Devi accedere o registrarti per scrivere nel forum
3 risposte