Programa de contraseña

Necesito crear un programa de contraseña si un usuario ingresa por equivocación su contraseña este solo aceptara 3 veces el error este beberá salir automáticamente del programa, pero si ingrsa la clave correcta este le dirá bienvenido a su programa
1

1 respuesta

1
Respuesta de
Pues tengo uno que te pide el usuario y la contraseña, lo configuré para que fueran 3 veces, tú puedes decir cual es el nombre de usuario y la contraseña modificando las constantes definidas en el main().
int main(void) {
const char USUARIO[] ="usuario";
const char CONTRASENA[] ="contrasena";
const int numIntentos =3;
int i;
char usuario[100];
char contrasena[100];
for (i=0; i<numIntentos; i++) {
printf("usuario: ");
scanf("%s", usuario);
if (strcmp(USUARIO, usuario) != 0) {
printf("\tusuario no registrado\n");
continue;
}
printf("contrasena: ");
scanf("%s", contrasena);
if (strcmp(CONTRASENA, contrasena) != 0) {
printf("\tcontrasena invalida\n");
continue;
}
printf("\n*** Bienvenido al programa ***\n");
break;
}
if (i == numIntentos) {
printf("\nPrograma no ejecutado.\n");
return 1;
}
printf("\nPrograma ejecutando...\n");
//programa
return 0;
}
Si no te interesa que revise el nombre de usuario, solo la contraseña, sería el siguiente:
int main(void) {
const char CONTRASENA[] ="contrasena";
const int numIntentos =3;
int i;
char contrasena[100];
for (i=0; i<numIntentos; i++) {
printf("contrasena: ");
scanf("%s", contrasena);
if (strcmp(CONTRASENA, contrasena) != 0) {
printf("\tcontrasena invalida\n");
continue;
}
printf("\n*** Bienvenido al programa ***\n");
break;
}
if (i == numIntentos) {
printf("\nPrograma no ejecutado.\n");
return 1;
}
printf("\nPrograma ejecutando...\n");
//programa
return 0;
}
Donde dice //programa es donde va el cuerpo de tu programa.
Espero esto resuelva tu problema.
Saludos
rober_
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje
¿No es la pregunta que estabas buscando?
Puedes explorar otras preguntas del tema C y C++ o hacer tu propia pregunta: