Adivina en C

//Librería que contiene las funciones scanf y printf
#include <stdio.h> 
//Librería para usar los números aleatorios
#include <stdlib.h>
//Librería para obtener la fecha actual
#include <time.h>


//Prototipo de la función adivina
int adivina (int solucion);

//Función principal del programa
int main ()

{
 
 // Este programa elige un número aleatoriamente y el usuario tiene
 // que adivinar qué número es. Se cuenta el número de intentos.
 
 
 // Declaro las variables de mi función
 int num, fallos;
 
 //Inicializo la semilla de número aleatorios
 srand(time(NULL));
 //Elijo un número aleatoriamente
 num=rand()%(100+1);
    
    fallos=adivina(num);
    
    printf("\nTe llevó %d intentos\n", fallos);
 

//Fin del programa

return 0;

}

int adivina (int solucion)
{
    int eleccion, fin=0, intentos=0;

    do
 {
  // Leo un número
  printf("\n¿Qué número crees que es? Rango de 0 a 100: ");
  scanf("%d",&eleccion);
        
  if (eleccion>solucion)
  {
   printf("\nEl número que has introducido es mayor!!\n");
   intentos++;
  }
  else
  {
   if(eleccion<solucion)
   {
    printf("\nEl número que has introducido es menor!!\n");
    intentos++;
   }
   else
   {
    intentos++;
    printf("Acertaste!!!\n");
    fin=1;
   }
  }
 }while(fin==0);
    return intentos;

}