#include <stdio.h>
#define MAX 30
main()
{
int n, i, confronto, min, j;
int a[MAX], b[MAX];
int minori (int a[], int m, int b[]);
//Inializzazione e caricamento array
printf ("Dimmi quanti numeri vuoi immettere nell'array:\n");
do {
scanf ("%d", &n);
if (n>MAX) {
printf ("Hai superato il limite massimo\n");}
} while (n>MAX);
for (i=0; i<n; i++) {
printf ("Dammi il %d' numero:\n", i+1);
scanf ("%d", &a[i]);}
//Richiesta numero di confronto
printf ("Dammi il valore da confrontare:\n");
scanf ("%d", &confronto);
min = minori (a, confronto, b);
//Visualizzazione elementi array a
printf ("Ci sono i seguenti elementi nell'array a:\n");
for (i=0; i<n; i++){
printf ("%d\n", a[i]);}
//Visualizzazione quanti elementi minori
printf ("Ci sono %d numeri minori di %d", min, confronto);
//Visualizzazione elementi array b
printf ("Ci sono i seguenti elementi nell'array b:\n");
for (j=0; j<n; j++){
printf ("%d\n", b[j]);}
getchar();
getchar();
}
//Definizione funzione minori
int minori (int a[], int m, int b[]) {
int min, j, i, n;
min = 0;
j = 0;
for (i=0; i<n; i++){
if (a[i]<m) {
b[j] = a[i];
j++;
min++;}
}
return (min);
}