Hola, supongo que ya lo tendras solucionao, pero ya que estaba por aqui queria poner otra forma de hacerlo. Por poner una forma sin tantos if y darte otras ideas.
Lo ultimo que pones de dividir no entendi muy bien lo que quieres decir que hay que hacer.Si quieres aclaralo un poco, aunque por lo que mire la i con la que recorres el vector de la estructura no lo incrementas.
Ahi va otra manera, de entre tantas que hay xdd
#define TAM 4
#include <stdio.h>
#include <conio.h>
void comprobar(int * ,int *,int * );
int main(int argc, char *argv[])
{
int vector[TAM];
int i=0;
int numbuscar=0;
int repite=0;
for(i=0;i<TAM;i++)
{
}
printf("Deme un numero a buscar las veces que se repitio");
//aqui paso el vector a la funcion para comprobar cuantas veces se repite el numero
comprobar(vector,&numbuscar,&repite);
printf("El numero %d se repite %d veces \n",numbuscar
,repite
);
}//fin main
void comprobar (int *vector, int *numbuscar, int *repite)
{
int i=0;
for(i=0;i<TAM;i++)
{
if(vector[i]==*numbuscar)
{
*repite=*repite+1;//se que es raro ponerlo asi, pero sino no se incrementaba
}
}
}