Linguaggio C

Popola e stampa un array e trova il valore max e min dei suoi elementi per mezzo delle funzioni

Programma che utilizzando le funzioni, popola, stampa e trova valore min e max degli elementi presenti nell’array

/* Programma che per mezzo delle funzioni, popola e stampa un array 
e trova il valore max e min */
 
#include <stdio.h>

// Dichiarazione del prototipo di funzione
void head();
void popola(int a[], int n);
void stampa(int a[], int n);
int min(int a[], int n);
int max(int a[], int n);

int main(void){
 	// Costante
 	const int N = 5;
 	
 	// Variabili
 	int array[N];
 	
 	// Invoca funzioni
 	head();
 	popola(array, N);
 	stampa(array, N);
 	
 	// Trova e stampa valore min e max
 	printf("*** Il valore minimo tra gli elementi dell'array e': %d ***\n", min(array, N));
 	printf("*** Il valore massimo tra gli elementi dell'array e': %d ***\n", max(array, N));
}
// Definizione delle funzioni
void head(){
	printf("*** PROGRAMMA CHE CON L'AUSILIO DELLE FUNZIONI GESTISCE GLI ARRAY ED I SUOI VALORI ***\n\n");
}

// Funzione popola array
void popola(int a[], int n){
	int i;	
	printf("*** Popola array ***\n");
	for(i=0; i<n; i++){
		printf("Inserisci valore intero di posizione [%d]: ", i);
		scanf("%d", &a[i]);
	}
	printf("*** *** *** *** *** *** *** *** *** *** *** ***\n\n");
}

// Funzione stampa array popolato
void stampa(int a[], int n){
	int i;
	
	printf("*** Stampa dei valori presenti nell'array ***\n");
	for(i=0; i<n; i++){
		printf("Posizione [%d] %d\n", i, a[i]);
	}
	printf("*** *** *** *** *** *** *** *** *** *** *** ***\n\n");
}

// Funzione calcola min tra n valori array
int min(int a[], int n){
	int i, min;
	
	// Considero temporanemante min il primo elemento dell'array
	min = a[0];
	
	for(i=0; i<n; i++){
		// Se l'elemento i-simo è < min
		if(a[i] < min){
			// Scambio min con a[i]
			min = a[i];
		}
	}
	// Ritorna il valore min trovato
	return min;
}

// Funzione calcola max tra n valori array
int max(int a[], int n){
	int i, max;
	
	// Considero temporanemante max il primo elemento dell'array
	max = a[0];
	
	for(i=0; i<n; i++){
		// Se l'elemento i-simo è > ax
		if(a[i] < min){
			// Scambio max con a[i]
			max = a[i];
		}
	}
	// Ritorna il valore max trovato
	return max;
}