當前位置:首頁 » 編程語言 » c語言用戶登錄系統

c語言用戶登錄系統

發布時間: 2022-07-27 17:39:04

㈠ 多用戶登錄系統c語言程序

#include<stdio.h>
#include<stdlib.h>
#include"string.h"
#include"windows.h"

inttotal=0;

structu_p
{
charuser[20];
charpass[20];
}s[50];

voidread()
{
total=GetPrivateProfileInt("INFO","count",0,"d:\Info.dat");
inti;
chart[5]={""};
for(i=0;i<total;i++)
{
sprintf(t,"%d",i+1);
GetPrivateProfileString(t,"USER","",s[i].user,20,"d:\Info.dat");
GetPrivateProfileString(t,"PASSWORD","",s[i].pass,20,"d:\Info.dat");
}
}

voidinput()
{
intp,i=0,count=0,f_u=0,f_p=0;
charuser[20]={""};
charpassword[20]={""};
while(1)
{
f_u=0;
f_p=0;
system("cls");
printf("當前共有%d個注冊用戶",total);
printf(" 請輸入用戶名:");
memset(user,'',20);
scanf("%s",user);
printf(" 請輸入密碼:");
memset(password,'',20);
i=0;
while(1)
{
p=_getch();
if(p==10||p==13)
{
break;
}
password[i++]=p;
printf("*");
}
for(i=0;i<total;i++)
{
if(strcmp(s[i].user,user)==0)
{
f_u=1;
if(strcmp(s[i].pass,password)==0)
{
f_p=1;
printf(" 歡迎%s",user);
fflush(stdin);
_getche();
continue;
}
}
}
if(f_u==0)
{
printf(" 不存在該用戶名!選1重新輸入,選2注冊新用戶");
intc=0;
fflush(stdin);
c=_getche();
if(c=='1')
{
continue;
}
elseif(c=='2')
{
system("cls");
printf("注冊新用戶");
printf(" 請輸入用戶名:");
memset(user,'',20);
scanf("%s",user);
printf(" 請輸入密碼:");
chartemp[20]={""};
i=0;
while(1)
{
p=_getch();
if(p==10||p==13)
{
break;
}
temp[i++]=p;
printf("*");
}
printf(" 請再次輸入密碼:");
i=0;
memset(password,'',20);
while(1)
{
p=_getch();
if(p==10||p==13)
{
break;
}
password[i++]=p;
printf("*");
}
if(strcmp(temp,password)==0)
{
total++;
chart[5]={""};
sprintf(t,"%d",total);
WritePrivateProfileString("INFO","count",t,"d:\Info.dat");
WritePrivateProfileString(t,"USER",user,"d:\Info.dat");
WritePrivateProfileString(t,"PASSWORD",password,"d:\Info.dat");
printf(" 注冊成功,請重新登錄");
fflush(stdin);
_getch();
count=0;
read();
continue;
}
else
{
printf(" 兩次密碼不一致,注冊失敗");
fflush(stdin);
_getch();
count=0;
continue;
}
}
}
elseif(f_p==0)
{
count++;
if(count>=3)
{
printf(" 連續輸入3次錯誤,程序將退出");
fflush(stdin);
_getche();
return;
}
printf(" 密碼輸入錯誤,請重新輸入");
fflush(stdin);
_getche();
}
}
return;
}

intmain(intargc,char*argv[])
{
read();
input();

return0;
}

㈡ c語言登錄系統

#include<stdio.h>
#include<string.h>
#include<stdlib.h>//增加return的庫函數
intlogin()
{
charsecercode[6];
intnumber=3;
printf(" ");
printf(" **********歡迎使用管理系統**************");
printf(" ");
scanf("%s",secercode);
while(number>0)
{
if(strcmp(secercode,"88888888")==0)
returnEXIT_SUCCESS; //while語句裡面的結束循環用break是不對的
else
{
number--;
if(number<=0)break;
printf(" 還有%d次機會 ",number);
printf(" 請輸入密碼:");
scanf("%s",secercode);
}
}
if(number>0)return1;
elsereturn0;
}
mainMenu()
{
printf("密碼正確 ");
}
main()
{
if(login()==0)return1;
do
{
mainMenu();
}while(1);
}

㈢ 如何用C語言編程實現用戶登錄

C語言的話,一般用戶信息存儲在結構體鏈表裡
你輸入用戶名回車以後,需要遍歷鏈表,使用strcmp()函數逐一對比鏈表裡是否存儲了你輸入的用戶名。不存在輸出「無此用戶」,存在繼續輸入密碼,將密碼與此結點的密碼信息對比,處理方式同用戶名;
至少三次輸入錯誤,可設一個整形變數index = 0,每錯誤一次執行index++,當if(index==3)成立時,輸出相應信息,並執行exit(1);

㈣ C語言用戶登錄系統賬戶密碼比對

#include<stdio.h>
#include<string.h>

typedefstructaccount{
charname[32];
characc[16];
charpsw[16];
}Acc;

//data是結構體數組,filename是文件絕對地址,n保存讀入的結構體數量
voidGetDataFromTxt(Acc*data,constchar*filename,int*n)
{
FILE*fp=fopen(filename,"r");
if(NULL==fp){
printf("Openfilefailedornothisfile! ");
return;
}

inti=0;
while(!feof(fp))
{
fscanf(fp,"%s%s%s",data[i].name,data[i].acc,data[i].psw);
i++;
}
*n=i;
}

intmain()
{
inti,n;
Accdata[100];
//獲取數據
GetDataFromTxt(data,"E:\secret.txt",&n);
printf("n=%d ",n);
printf("姓名賬號密碼 ");
for(i=0;i<n;++i)
printf("%-4s%-16s%-10s ",data[i].name,data[i].acc,data[i].psw);

//登錄示例
putchar(' ');
characc[16],psw[16];
do{
//這里只是粗略地寫了一個
//具體的賬號錯誤或者密碼錯誤自行發揮
printf("請輸入賬號:");
scanf("%s",acc);
printf("請輸入密碼:");
scanf("%s",psw);
for(i=0;i<n;++i)
{
if(strcmp(acc,data[i].acc)==0&&strcmp(psw,data[i].psw)==0){
printf("登陸成功! ");
break;
}
}
if(i==n){
printf("賬號或密碼不正確!請重新輸入! ");
}else{
break;
}
}while(1);
printf("Byebye!!! ");

return0;
}

㈤ 用C語言編的用戶登錄系統

int shuru() //正確返回1,錯誤返回0
{
char mi[10];
int i;
FILE *fp;
ATMSYTEM at;
char zhang[9]; fp = fopen( "atmsy.dat", "rb" );
flag = 0;
printf("\n\t ================歡迎進入用戶登陸系統===============\n");
while(1) //循環錄入用戶信息
{
printf("\n請輸入賬號(0_退出):");
scanf("%s",zhang); if(zhang[0] == '0')
{
return 0; //退出系統,不進入主菜單
}
while(fread(&at,sizeof(ATMSYTEM),1,fp) != 0) //查找用戶賬號是否存在
{
if(strcmp(zhang,at.zhanghao) == 0) //該用戶存在
{
flag = 1;
break;
}
}
rewind(fp); //文件指針回到開頭 if(flag) //若是該用戶存在,那麼輸入密碼
{
for( i = 0; i < 3; i++) //3次機會輸入密碼
{
printf("\n請輸入密碼:");
scanf("%s",mi);
while(fread(&at,sizeof(ATMSYTEM),1,fp) != 0) //核對密碼
{
if(strcmp(mi,at.password) == 0) //該密碼存在
{
return 1;
}
}
rewind(fp); //不停返迴文件開頭,核對密碼
}
printf("密碼輸錯3次!無法登陸系統!\n");
getch();
return 0;
} if(flag == 0)
{
printf("輸入賬號錯誤,請重新輸入\n");
getch();
}
}
}

㈥ c語言編寫用戶登錄程序

代碼如下:

#include<stdio.h>

#pragma warning(disable:4996)

#include<string.h>

int main()

{

int i = 0;

char password[10] = { 0 };

printf("請輸入密碼:");

while (i < 3)

{

scanf("%s", password);

printf(" ");

if (strcmp(password, "972816") == 0)

{

printf("登錄成功 ");

break;

}

else

{

i++;

if (i != 3)

printf("再輸入一次");

}

}

if (i == 3)

printf("密碼錯誤三次退出登錄界面 ");

system("pause");

return 0;

(6)c語言用戶登錄系統擴展閱讀:

#include後面有兩種方式,<>;和""前者先在標准庫中查找,查找不到在path中查找。後者為文件路徑,若直接是文件名則在項目根目錄下查找。

引用方法:#include<stdio.h>

注意事項:在TC2.0中,允許不引用此頭文件而直接調用其中的函數,但這種做法是不標準的。也不建議這樣做。以避免出現在其他IDE中無法編譯或執行的問題。

㈦ c語言設計用戶登錄系統,在登錄界面中,如果第一次密碼錯誤,第二次明明輸入密碼正確為什麼還是顯示錯誤

請把原碼全部貼出來,這個截圖太模糊。
我從模糊的圖片中,看到類似fread的字樣。那麼你的賬戶密碼信息是從一個文件中讀取出來。
那麼:
一、檢查你文件中的原始數據是否有寫錯。
二、用於存儲的變數空間是否夠存儲全部讀取的數據。
三、對一個文件多次讀寫後,文件指針不在初始位置,確認是否需要fseek設置文件指針初始位置。
四、檢查fopen是否執行成功。比如:多次fopen同一個文件,但前一次沒有用fclose關閉文件流。

㈧ c語言程序,登錄注冊系統

提供一個思路,將txt文件中的內容讀取到一個數組中,這個數組中的數據應該是你自定義的結構體。然後將該用戶名與數組中的內容循環比較。如果發現有相等的(即已存在),則注冊失敗!給個例子:

#include<stdio.h>
intmain()
{
intv[100];//開一個足夠大的數組。
inti=0,j;
FILE*fp;//文件指針

fp=fopen("in.txt","r");//以文本方式打開文件。
if(fp==NULL)//打開文件出錯。
return-1;
while(fscanf(fp,"%s",v[i])!=EOF)//讀取數據到數組,直到文件結尾(返回EOF)
i++;
fclose(fp);//關閉文件

charregisterName[20];
for(j=0;j<i;j++)//循環輸出數組元素。
{
if(strcmp(registerName,v[i].name)==0)
{
printf("該用戶名已存在! ");
break;
}
}
return0;
}

大概就這樣的。具體的細節你自己調試。

熱點內容
ftpup上傳三個文件 發布:2025-01-25 01:38:15 瀏覽:762
錄音加密忘記 發布:2025-01-25 01:37:29 瀏覽:501
閑魚賣腳本 發布:2025-01-25 01:37:24 瀏覽:157
密碼匯款在什麼區域了兌付 發布:2025-01-25 01:36:49 瀏覽:146
wamp資料庫 發布:2025-01-25 01:36:02 瀏覽:794
安卓通知欄怎麼顯示秒錶 發布:2025-01-25 01:32:47 瀏覽:757
apk反編譯入門 發布:2025-01-25 01:26:43 瀏覽:472
英雄聯盟在哪投訴腳本 發布:2025-01-25 01:26:43 瀏覽:314
php在線統計 發布:2025-01-25 01:26:42 瀏覽:65
手機加密室 發布:2025-01-25 01:25:57 瀏覽:219