Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/06/2011, 20:06
sam90
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años, 9 meses
Puntos: 228
Respuesta: Funcion de busqueda?

Primero que todo al definir el struct los indices estan al revez:

Código C:
Ver original
  1. struct agenda{
  2. char nombre[100][25];
  3. char telefono[100][25];
  4. int edad[100];
  5. int n;
  6. }a;

Como lo habias hecho vos solo permitias 25 cotactos con nombre de 100 caracteres. Pero viendo como definiste el vector edad supongo que queres un maximo de 100 contactos.

Otro error, cuando pides los datos de la edad tambien tienes que ponerle indice y ademas el operador & para pasar la direccion de memoria:

Código C:
Ver original
  1. s("%s", &a.edad[i])

Cuando imprimes datos no es necesario que usses el operador &.

Código C:
Ver original
  1. p("\nNombre: %s Telefono: %s Edad %d \n", a.nombre[i], a.telefono[i], a.edad[i]);

Con respecto a tu error fijate que para comparar cadenas no podes hacer
buscarl==a.nombre[i]

Eso solo compara las direcciones de memoria que en este caso van a ser diferentes. Lo que tienes uqe usar es la funcion strcmp. Esta va comparando caracter a caracter para ver si es la misma cadena.

Por el momento eso es todo. Fijate de leer un buen manual de punteros.