Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: AleBallesta en 1 Mayo 2015, 01:11 AM

Título: Error en bucles for
Publicado por: AleBallesta en 1 Mayo 2015, 01:11 AM
Hola! Aca estoy haciendo un programa en C (siguiendo un ejercicio de un curso) y, obviamente, lleno de errores. La idea del programa es ingresar 10 nombres y, despues ingresar otro y que el programa te diga si esta en el array creado con los nombres.
Copio el codigo y una cita de lo que pasa al ejecutarlo.


#include <stdio.h>

int main()
{
char names[ ] = {};
int counter;
char input[100];
int i;
int quit;
for (counter=0; counter<10; counter +=1)
{
printf("Enter a name: ");
gets(names);
}
while (quit!=1)
{
printf("Enter a name to see if it is on DB: ");
gets(input);
for (i=0; i<10; i++)
{
if (names[i]==input)
{
printf("One match in DB");
}
if (names[i]!=input)
{
printf("No match in DB");
}
}
printf("Enter number one to exit and two to continue: ");
scanf("%d", &quit);
}

return 0;
}



Citar
Enter a name: Esteban
Enter a name to see if it is on DB: Esteban
No match in DBNo match in DBNo match in DBNo match in DBNo match in DBNo match in DBNo match in DBNo match in DBNo match in DBNo match in DBEnter number one to exit and two to continue: 1

Aclaro que el nombre Esteban y el 1 es el ingreso de datos.
Si me ponen en el camino correcto, muy agradecido.
Título: Re: Error en bucles for
Publicado por: engel lex en 1 Mayo 2015, 01:23 AM
recomendado leer...

esto posiblemente resuelva varias dudas
https://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html (https://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html)

uno de los grandes errores es
(names[i]==input)

querer comprar una letra con un texto...

para comparar te va a tocar usar strcmp, o comprar letra a letra
Título: Re: Error en bucles for
Publicado por: AleBallesta en 1 Mayo 2015, 01:35 AM
Engel Lex, muchas gracias! Ya habia probado con strcmp y la saque, ahora la vuelvo a agregar. Voy a leer ese texto y listar mis cientos de errores.
Gracias!