elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  ingresar 3 nombres y luego buscar uno entre esos 3 y que me diga la posicion
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ingresar 3 nombres y luego buscar uno entre esos 3 y que me diga la posicion  (Leído 1,857 veces)
Emily

Desconectado Desconectado

Mensajes: 18


Ver Perfil
ingresar 3 nombres y luego buscar uno entre esos 3 y que me diga la posicion
« en: 18 Abril 2017, 11:31 am »

Tengo que ingresar 3 nombres y luego buscar uno entre esos 3 y que me diga en que posicion esta.

mi codigo corre el problema es que nunca busca el nombre solo se va directo al if que dice que el nombre no existe, alguien de favor podria ayudarme

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. int main ()
  5. {
  6.    char array[3][30];
  7.    char nombre[30];
  8.    char am[30];
  9.    char ap[30];
  10.    char busq[30];
  11.    int t=1;
  12.        for (int i=0;i<3;i++)
  13.        {
  14.          printf ("Ingrese su nombre\n");
  15.          gets(nombre);
  16.          printf ("Ingrese su apellido paterno\n");
  17.          gets(ap);
  18.          printf ("Ingrese su apellido materno\n");
  19.          gets(am);
  20.          strcat(nombre," ");
  21.          strcat(nombre,ap);
  22.          strcat(nombre," ");
  23.          strcat(nombre,am);
  24.          strcat(nombre," ");
  25.          strcat(array[i],nombre);    
  26.        }
  27.    printf ("Nombre a buscar...\n");
  28.    gets(busq);
  29.    for (int i=0;i<3;i++)
  30.    {
  31.    if (strcmp(busq,array[i])==0)
  32.     {printf ("El nombre esta en la posicion %d\n",i+1);
  33.     t=0;
  34.     }
  35.    }
  36.    if (t==1)
  37.    printf("El nombre no existe");
  38.    return 0;
  39.    system ("pause");
  40. }


· Títulos deben ser descriptivos
>aquí las reglas del foro
-Engel Lex


« Última modificación: 18 Abril 2017, 21:12 pm por engel lex » En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: AYUDA!!! con un programa en C
« Respuesta #1 en: 18 Abril 2017, 18:20 pm »

Tienes unos cuántos fallos pero el más grave es que usas strcat para llenar array. Esta función concatena cadenas, es decir, busca el valor de fin de cadena de la primera y copia la segunda a partir de ese valor, incluido.

Debes usar strcpy, que lo que hace es copiar la cadena desde el principio.

Ahora tienes unos cuantos errores más que, con el tiempo, aprenderás a solucionar.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines