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.
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
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!