software-bloat
12-05-2009, 14:18
ciao a tutti ^^
sto facendo un programma dove dò la possibilità all'utente di registrarsi o accedere.
per ora ho buttato giù queste righe,ma la funziona accedi non va:stordita:
#include <stdio.h>
#include <stdlib.h>
void accedi();
void registrati();
int main()
{
char scelta;
while (1) {
printf("Scegli una delle seguenti opzioni\n");
printf("[1] - Accedi\n");
printf("[2] - Registrati\n");
printf("[3] - Esci\n");
scanf("%c", &scelta);
while(getchar() != '\n');
switch (scelta){
case '1':
accedi();
exit(0);
case '2':
registrati();
exit(0);
case '3':
exit(0);
default:
printf("\aOPZIONE NON VALIDA\n");
}
}
return 0;
}
void accedi()
{
FILE * fp;
char username[20],password[20],Cuser[20],Cpass[20],str[50];
printf("USERNAME: ");
gets(username);
printf("PASSWORD: ");
gets(password);
while(!feof(fp)){
fscanf(fp,"%s %s",Cuser,Cpass);
if((strcmp(Cuser,username)==0) && (strcmp(Cpass,password)==0)){
printf("BENVENUTO %s",Cuser);
}
else{
printf("\aERRORE,UTENTE NON REGISTRATO");
main();
}
}
}
void registrati()
{
char username[20];
char password[20];
FILE * fp;
fp = fopen("db_utenti.txt", "a");
printf("USERNAME: ");
gets(username);
fputs(username,fp);
fputs(" ",fp);
printf("PASSWORD: ");
gets(password);
fputs(password,fp);
fputs("\n", fp);
}
mi sa che sbaglio qualcosa nel ciclo...
sto facendo un programma dove dò la possibilità all'utente di registrarsi o accedere.
per ora ho buttato giù queste righe,ma la funziona accedi non va:stordita:
#include <stdio.h>
#include <stdlib.h>
void accedi();
void registrati();
int main()
{
char scelta;
while (1) {
printf("Scegli una delle seguenti opzioni\n");
printf("[1] - Accedi\n");
printf("[2] - Registrati\n");
printf("[3] - Esci\n");
scanf("%c", &scelta);
while(getchar() != '\n');
switch (scelta){
case '1':
accedi();
exit(0);
case '2':
registrati();
exit(0);
case '3':
exit(0);
default:
printf("\aOPZIONE NON VALIDA\n");
}
}
return 0;
}
void accedi()
{
FILE * fp;
char username[20],password[20],Cuser[20],Cpass[20],str[50];
printf("USERNAME: ");
gets(username);
printf("PASSWORD: ");
gets(password);
while(!feof(fp)){
fscanf(fp,"%s %s",Cuser,Cpass);
if((strcmp(Cuser,username)==0) && (strcmp(Cpass,password)==0)){
printf("BENVENUTO %s",Cuser);
}
else{
printf("\aERRORE,UTENTE NON REGISTRATO");
main();
}
}
}
void registrati()
{
char username[20];
char password[20];
FILE * fp;
fp = fopen("db_utenti.txt", "a");
printf("USERNAME: ");
gets(username);
fputs(username,fp);
fputs(" ",fp);
printf("PASSWORD: ");
gets(password);
fputs(password,fp);
fputs("\n", fp);
}
mi sa che sbaglio qualcosa nel ciclo...