Programa en lenguaje C del sistema de inicio de sesión multiusuario
#include?
#include?
#include?"string.h"
#include?"windows.h"
int?total=0;
struct?u_p
{
char? usuario[20];
char?pass[20];
}?s[50];
void?read()
{
total=GetPrivateProfileInt("INFO","count",0,"d:\\Info.dat");
int?i;
char?t[5]={"\0"};
for(i=0;i { sprintf(t,"%d",i+1); GetPrivateProfileString(t,"USER","",s[i].user,20,"d:\\Info.dat "); GetPrivateProfileString(t,"CONTRASEÑA","",s[i].pass,20,"d:\\Info.dat"); } } void?input() { int?p,i=0,count=0,f_u=0, f_p=0; char?usuario[20]={"\0"}; char?contraseña[20]={"\0"}; mientras(1) { f_u=0; f_p=0; sistema("cls") ; printf("Actualmente *** hay %d usuarios registrados", en total);? printf("\n\nPor favor ingrese el nombre de usuario: "); memset(usuario,'\0',20); scanf("%s",usuario); printf("\nPor favor ingrese su contraseña :"); memset(contraseña,'\0',20); i=0; while(1) { p=_getch(); if(p==10?||?p==13) { romper; } contraseña[i++]=p; printf("*"); } for(i=0;i { if(strcmp(s[i].usuario,usuario)==0) { f_u=1; if(strcmp(s[i].contraseña,contraseña)==0) { f_p=1; printf("\n\n¿Bienvenido?%s",usuario); fflush(stdin); _getche(); continuar; } } p> } if(f_u==0) { printf("\n\n¿¡El nombre de usuario no existe!? ¿Seleccionar? 1?Reingresar y seleccionar?2?Registrar un nuevo usuario"); int?c=0; fflush(stdin); c = _getche(); if(c=='1') { continuar; } else?if(c=='2') { system("cls"); printf("Registrar nuevo usuario" ) ; printf("\n\n\nPor favor ingrese el nombre de usuario: "); memset(usuario,'\0',20); scanf("%s",usuario); printf("\nPor favor ingrese la contraseña:"); char?temp[20]={"\0"} ? ; i=0; mientras(1) { p=_getch(); if(p==10?||?p==13) { descanso; } temp [ i++]=p; printf("*"); } printf("\nPor favor, ingrese la contraseña nuevamente:"); i=0; memset(contraseña,'\0',20); while(1) { p=_getch(); if(p==10?||?p==13) { descanso; } contraseña[i++]=p; printf("*"); } if(strcmp(temp,contraseña)==0) { total++; char?t[5]={"\0"}; sprintf(t,"%d",total); WritePrivateProfileString("INFO","count",t,"d:\\Info.dat"); WritePrivateProfileString(t,"USUARIO",usuario,"d:\\Info.dat"); WritePrivateProfileString(t,"CONTRASEÑA",contraseña,"d:\\Info .dat"); printf("\n\nRegistro exitoso, inicie sesión nuevamente"); fflush(stdin); _getch() ; cuenta=0; leer(); continuar;? } más { printf("\n\nDos veces La contraseña es inconsistente, el registro falló"); fflush(stdin); _getch(); count=0; continuar ;? } } } ¿otra cosa?if(f_p==0) { count++;? if(count>=3) { printf("\n\nIngrese 3 veces en una fila Error, el programa saldrá"); fflush(stdin); _getche(); return?;? } printf("\n\nContraseña incorrecta, vuelva a ingresarla"); fflush(stdin); _getche(); } } return?; } int?main(int?argc,? char?* argv[])? { lectura(); entrada(); retorno?0; }