A. 如何用c語言編程實現用戶登錄
C語言的話,一般用戶信息存儲在結構體鏈表裡
你輸入用戶名回車以後,需要遍歷鏈表,使用strcmp()函數逐一對比鏈表裡是否存儲了你輸入的用戶名。不存在輸出「無此用戶」,存在繼續輸入密碼,將密碼與此結點的密碼信息對比,處理方式同用戶名;
至少三次輸入錯誤,可設一個整形變數index = 0,每錯誤一次執行index++,當if(index==3)成立時,輸出相應信息,並執行exit(1);
B. C語言編寫用戶登錄程序
艾達的小刀
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
/*隨機碼產生函數*/
void RandomCode (char Rcode[])
{
int i;
srand ((unsigned int)time(NULL));
for (i = 0; i < 3; ++i)
Rcode[i] = rand()%10 + '0';
Rcode[i] = '\0';
}
/*登陸函數,判斷信息是否匹配,若匹配返回1,否則返回0*/
int LandedApp (char *password[], char Rcode[])
{
char name[10] = {0};
char pword[10] = {0};
char rcode[4] = {0};
printf ("用戶名 : ");
gets (name);
printf ("密碼 : ");
gets (pword);
printf ("隨機碼 : ");
gets (rcode);
if (strcmp (name, password[0]) != 0 || strcmp (pword, password[1]) != 0 || strcmp (rcode, Rcode) != 0)
return 0;
else
return 1;
}
int main ()
{
char * password[2] = {"admin", "admin123"}; //用戶名和密碼
char rc[4] = {0}; //隨機碼
int count = 3; //可輸入次數
puts ("請輸入用戶名,密碼和隨機碼:");
while (count)
{
RandomCode (rc);
printf ("隨機碼 : %s\n", rc);
if (LandedApp(password, rc) != 0)
break;
--count;
if (count != 0)
puts ("錯誤的用戶名或密碼或隨機碼,請重新輸入: ");
}
if (count != 0)
puts ("\n成功登陸!");
else
puts ("\n登錄失敗 !");
return 0;
}
艾達的小刀
C. c語言編寫程序,模擬用戶注冊和登錄的過程,實現用戶的注冊和登錄
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
char username[20];
char password[20];
char s1[20],s2[20];
int n=0;
printf("--------------------\n 1 注冊 \n 2 登錄 \n 0 退出 \n--------------------\n 請選擇(0-2)\n");
scanf("%d",&n);
while(n==1){
char usernametmp[20];//tmp作為臨時保存單位
char passwordtmp[20];
printf("請輸入用戶名:");
scanf("%s",usernametmp);
strcpy(username,usernametmp);
printf("請輸入密碼:");
scanf("%s",passwordtmp);
strcpy(password,passwordtmp);
printf("注冊成功!\n");
break;
}
while(n==2)
{
printf("輸入用戶名:");
fflush(stdin);//清空輸入緩沖區
gets(s1);
printf("輸入密碼:");
fflush(stdin);
gets(s2);
if((strcmp(s1,username)==0)&&(strcmp(s2,password)==0)){
printf("登陸成功\n");}
else{
printf("用戶名或密碼錯誤!登錄失敗!\n");}
}
return 0;
}
D. 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;
(4)c語言做登錄界面擴展閱讀:
#include後面有兩種方式,<>;和""前者先在標准庫中查找,查找不到在path中查找。後者為文件路徑,若直接是文件名則在項目根目錄下查找。
引用方法:#include<stdio.h>
注意事項:在TC2.0中,允許不引用此頭文件而直接調用其中的函數,但這種做法是不標準的。也不建議這樣做。以避免出現在其他IDE中無法編譯或執行的問題。
E. 用C語言製作一個登陸界面1 注冊 注冊以後保存在文件中 2登陸時直接輸入用戶名和密碼登陸
這是一個用純C語言和文件操作實現的系統的登錄、注冊和忘記密碼功能。可以用於c語... 登錄:先輸入賬號和密碼。然後按賬號從文件中讀取,如果賬
F. c語言 商品銷售系統登入界面該怎麼寫
登錄包括檢查數據文件,檢測輸入格式,檢查數據重復性,驗證用戶名密碼。
根據讀取寫入追加數據的不同要求,fopen選項不同參數,比如"r","w","a"。注意每次用完後用fclose函數關閉數據流。
下面是演示代碼:(文件不存在自動創建,登錄失敗提示注冊,輸入驗證,你自己寫,比如:用戶名包含幾字母數字等)。
#include <stdio.h>
#include <string.h>
#define UFPATH "C:\user.data" //文件路徑
#define SMAX 20
typedef struct USER
{
char uName[SMAX];
char pwd[SMAX];
}UR;
UR *logon(char *uName,char *pwd);
int main()
{
UR *ur=NULL;
char uName[SMAX],pwd[SMAX];
printf("請輸入用戶名及密碼: ");
scanf("%s",uName);
scanf("%s",pwd);
if((ur=logon(uName,pwd))==NULL)
printf("登陸失敗");
else
printf("歡迎登錄!%s ",ur->uName);
return 0;
}
UR *logon(char *uName,char *pwd)
{
int isExcept=1;//標識變數,1:該用戶不存在。0:用戶名存在
FILE *fp=NULL;
static UR ur;
char c[2];
if((fp=fopen(UFPATH,"r"))==NULL)
{
printf("該路徑未發現記錄文件,新建文件! ");
if((fp=fopen(UFPATH,"wt"))==NULL)
{
printf("異常!新建文件失敗! ");
return NULL;
}
isExcept=1;
}
else
{
while(fscanf(fp,"%s%s",ur.uName,ur.pwd)!=-1)
{
if(strcmp(ur.uName,uName)==0 && strcmp(ur.pwd,pwd)==0)
{
printf("身份驗證通過! ");
fclose(fp);
return &ur;
}
}
printf("用戶密碼不正確,或用戶不存在! ");
fclose(fp);
isExcept=1;
}
if(isExcept==1)
{
printf("是否注冊用戶?(Y/N) ");
scanf("%s",c);
if(c[0]=='N')
return NULL;
if(c[0]=='Y')
{
while(isExcept)
{
printf("請輸入要注冊的用戶名及密碼: ");
scanf("%s",uName);
scanf("%s",pwd);//輸入驗證在這里添加!!!!!!!!!
//------------驗證新建的用戶名是否重名-------
if((fp=fopen(UFPATH,"r"))==NULL)
{
printf("異常!,文件打開失敗! ");
return NULL;
}
isExcept=0;
while(fscanf(fp,"%s%s",ur.uName,ur.pwd)!=-1)
{
if(strcmp(ur.uName,uName)==0)
{
printf("用戶名已存在,請重新輸入! ");
fclose(fp);
isExcept=1;
break;
}
}
fclose(fp);
//-------------------------------------------------------
}
if((fp=fopen(UFPATH,"a"))==NULL)
{
printf("異常!,文件打開失敗! ");
return NULL;
}
fprintf(fp,"%s %s%s",uName,pwd," ");
printf("用戶注冊成功! ");
strcpy(ur.uName,uName);
strcpy(ur.pwd,pwd);
}
}
fclose(fp);
return &ur;
}
//ps:代碼是按照你問題寫成一個登錄函數,但在一個項目中,對文件的讀寫改,應寫成獨立函數調用。其它函數調用這些函數。