亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

C語言簡單實現門禁系統

2020-01-26 13:33:25
字體:
來源:轉載
供稿:網友

問題提出

用C語言實現門禁系統功能。

功能簡析

1、系統登錄分為管理員登錄和學生登錄,輸入相應字符即可選擇登錄;

這里寫圖片描述 

2、學生登錄,學生使用自己的賬號密碼登錄系統,選擇開啟的門,即可開啟門禁;此外系統還會記錄下學生登錄的信息,如登錄賬號、登錄時間、開啟哪間門;

這里寫圖片描述 

3、管理員登錄,管理員登錄也是要輸入特定的賬號密碼才能登錄;登錄之后才能進入管理員操作界面進行相應操作,如添加學生賬號、刪除學生賬號、查看學生基本信息、查看學生登錄情況……輸入相應字符即可選擇執行相應的功能。

這里寫圖片描述 

4、管理員權限一:添加學生賬號。輸入學生姓名(即為賬號)、密碼、專業班級等基本信息,可用于后續查詢,回車完成添加。查看系統中學生信息,該賬號已存在

這里寫圖片描述 

5、管理員權限二:刪除學生賬號。輸入需要刪除的賬號,回車完成刪除操作,查看系統數據庫中已無該學生信息。

這里寫圖片描述 

6、管理員權限三:查看所以學生基本信息。輸入相應字符,即可查詢所以信息

這里寫圖片描述 

7、管理員權限四:查看學生登錄門禁系統情況。輸入相應相應字符,可按學生使用門禁系統時間先后順序一次顯示學生賬號、登錄時間,選擇開啟的門。

這里寫圖片描述 

8、管理員權限五:修改存在于系統的學生信息。輸入需要修改的學生賬號,并輸入修改后的賬號、密碼、專業班級等基本信息。

這里寫圖片描述

實現關鍵

首先考慮到要對學生賬號等基本數據要重復使用,且易更改,下次使用時上次修改的信息還會存在而不是對代碼進行修改,所以考慮使用對文本進行操作。將學生賬號密碼等數據信息全部儲存在一個txt或dat文本中,調用函數對文本進行相應操作,對數據的操作即是對文件的操作。

代碼實現

#include<stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>struct information{ char name[10]; char password[10]; char profession[20];};struct Thelog{ char name[10]; char times[24]; char num[1];};FILE *fp;   //文件指針 information *head;//鏈表頭指針 void add_student(information a);  //函數[1]管理員添加學生賬號,使用門禁系統 void delete_student(char names[10]);//函數[2]管理員員刪除學生賬號,解除使用門禁系統權限 void administrator_login();  //函數[3]管理員登陸 void administrator_management(); //函數[4]管理員操作界面,添加學生賬號,刪除學生賬號,查看學生使用門禁情況 void student_login();   //函數[5]學生登陸,用于打開門禁 void time ();     //函數[6]時間函數,用于顯示登陸時間 void All_output();    //函數[7]全部學生信息 void the_log(information a,char num[1]); //函數[8]錄入學生使用門禁情況 void log_output();       //函數[9]輸出學生使用門禁情況 void replace_massage(char names[10]);  //函數[10]更改學生信息,只有管理員有權限 int main(){ int n; printf("   *********************************************/n"); printf("   *   歡迎使用四海門禁系統!?。? */n"); printf("   *********************************************/n"); printf("/n"); printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/n"); printf("   *輸入0:退出系統; 輸入1:管理員登陸; 輸入2:學生登陸*/n"); printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/n"); printf(" "); scanf("%d",&n); while(n!=0) { if(n==1)  administrator_login(); else if(n==2)  student_login(); else if(n>10||n<0) {  printf("   *********************************************/n");  printf("   *   歡迎使用四海門禁系統?。?!  */n");  printf("   *********************************************/n");break; } printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/n"); printf("   *輸入0:退出系統; 輸入1:管理員登陸; 輸入2:學生登陸*/n"); printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/n");  printf(" ");  scanf("%d",&n); }  printf("   *********************************************/n");  printf("   *   歡迎使用四海門禁系統!?。? */n");  printf("   *********************************************/n"); return 0;}void administrator_login()   //管理員登錄 { information a; printf(" 請輸入管理員賬號:"); scanf("%s",a.name); printf(" 請輸入管理員密碼:"); scanf("%s",a.password); if(strcmp(a.name,"管理員")==0&&strcmp(a.password,"123456789")==0)  {  printf("/n");  printf(" *********管理員登陸成功!!!*********/n/n");  administrator_management();  }  else  {  printf( "    管理員登陸失?。。。≌垯z查仔細核對賬號、密碼/n");   }}void administrator_management() //管理員操作臺 { int num; printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/n"); printf("   *輸入1:注冊學生賬號   輸入2:刪除賬號  輸入3:顯示所有學生信息*/n");  printf("   *輸入4;查看學生使用門禁情況 輸入5:修改學生信息 輸入6:刷新屏幕  */n"); printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/n"); printf(" "); scanf("%d",&num); while(num!=-1) {  if(num==0||num>10||num<0)  {   printf("  管理員身份已注銷/n");   break;  }  if(num==1)  {  fp=fopen("student_Account.txt","a");  information a;  printf("   請輸入賬號:");  scanf("%s",a.name);  printf("   請輸入密碼:");  scanf("%s",a.password);  printf("  請輸入專業班級:");  scanf("%s",a.profession);   add_student(a);  fclose(fp);  }   if(num==2)  {  char names[10];  printf(" 請輸入要刪除的賬號:");  scanf("%s",names);  delete_student(names);  }   if(num==3)   {   fp=fopen("student_Account.txt","r");   All_output();   fclose(fp);   }  if(num==4)   {   fp=fopen("Thelog.txt","r");   log_output();   fclose(fp);   }   if(num==5)   {   char names[10];   fp=fopen("student_Account.txt","r+");    printf(" 請輸入需要修改的賬號:");    scanf("%s",names);    replace_massage(names);    fclose(fp);   }   if(num==6)   {   system("cls");   } printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/n"); printf("   *輸入1:注冊學生賬號   輸入2:刪除賬號  輸入3:顯示所有學生信息*/n");  printf("   *輸入4;查看學生使用門禁情況 輸入5:修改學生信息 輸入6:刷新屏幕  */n"); printf("   */*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/**/*/*/*/n");  printf(" ");  scanf("%d",&num); }}void student_login()    //學生登錄 { information a; information b; fp=fopen("student_Account.txt","r"); printf(" 請輸入賬號:"); scanf("%s",a.name); printf(" 請輸入密碼:"); scanf("%s",a.password); fread(&b,sizeof(struct information),1,fp); int i=0; while(feof(fp)==0) {  if(strcmp(a.name,b.name)==0&&strcmp(a.password,b.password)==0)  {  char num[1];  printf(" 請選擇要打開幾號門/n");  printf(" ");  scanf("%s",num);   time();   printf(" 親愛的%s童鞋,你成功登陸本系統,已開啟%s號門/n",a.name,num);   i++;  the_log(a,num);  }  fread(&b,sizeof(struct information),1,fp); } if(i==0)  printf(" 登陸賬號不存在或密碼錯誤?。?!若無賬號請聯系管理員分配賬號/n"); fclose(fp);}void delete_student(char names[10])  //管理員刪除學生賬號,解除使用門禁權限 {  FILE *p; information a; int i=0; fp=fopen("student_Account.txt","r"); p=fopen("student.txt","w"); fread(&a,sizeof(struct information),1,fp); while(feof(fp)==0) { if(strcmp(a.name,names)==0)  {fread(&a,sizeof(struct information),1,fp);i=1;} else  {   fwrite(&a,sizeof(struct information),1,p);  } fread(&a,sizeof(struct information),1,fp); }  if(strcmp(a.name,names)!=0)  fwrite(&a,sizeof(struct information),1,p); else  i=1; if(i==0)  printf(" 賬號%s不在系統中/n",names);  else  printf(" 賬號%s已成刪除/n",names); fclose(fp); fclose(p); remove("student_Account.txt"); rename("student.txt","student_Account.txt");}void add_student(information a)  //管理員添加學生信息,分配賬號,授權使用門禁系統 {   fseek(fp,-sizeof(struct information),1);   fwrite(&a,sizeof(struct information),1,fp);   printf("  添加學生%s成功!!!/n/n",a.name);}void time()       //顯示本地時間 { time_t rawtime; struct tm * timeinfo;time ( &rawtime );timeinfo = localtime (&rawtime );printf(" %s",asctime (timeinfo));}void All_output()     //輸出所有學生信息 { int i=0; information a; fread(&a,sizeof(struct information),1,fp); while(feof(fp)==0) {  printf("      * * * * * * * * * * * * * * * * * * * * * * */n");  printf("      *    學生賬號:%-20s*/n",a.name);  printf("      *    學生密碼:%-20s*/n",a.password);  printf("      *    專業班級:%-20s*/n",a.profession);  printf("      * * * * * * * * * * * * * * * * * * * * * * */n");  printf("/n");  i++; fread(&a,sizeof(struct information),1,fp); }  if(i==0) printf("    系統中無學生賬號?。?!/n/n");}void the_log(information a,char num[1])    //實時保存學生使用門禁系統情況 { FILE *p; Thelog c; strcpy(c.name,a.name); time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo =localtime ( &rawtime ); strcpy(c.times,asctime (timeinfo)); strcpy(c.num,num); p=fopen("Thelog.txt","a"); fwrite(&c,sizeof(struct Thelog),1,p);  fclose(p);}void log_output()        //輸出學生使用門禁系統情況 {  Thelog a; fread(&a,sizeof(struct Thelog),1,fp); while(feof(fp)==0) {  printf("%s",a.times);  printf("學生%s登錄了門禁系統,并開啟了%s號門/n",a.name,a.num); fread(&a,sizeof(struct Thelog),1,fp); }}void replace_massage(char names[10])   //更改學生信息 { information a; information b; fread(&a,sizeof(struct information),1,fp); if(strcmp(names,a.name)==0) { printf("  請輸入更改后的賬號:"); scanf("%s",b.name); printf("  請輸入修改后的密碼:"); scanf("%s",b.password); printf(" 請輸入修改后的專業班級:"); scanf("%s",b.profession); fseek(fp,-sizeof(struct information),1);//文件指針退回原結構體頭  fwrite(&b,sizeof(struct information),1,fp);//更新聯系人信息  printf("   信息更改成功?。?!/n/n"); } else if(feof(fp)==0)  replace_massage(names);//遞歸調用直到找到需要更改的姓名,并完成更改  else  printf("%s不在系統中?。?!/n/n",names);}

后期分析

后期可利用單片機實現刷卡登錄的門禁系統,利用qt 設計可視化程序,在學生登錄成功后觸發相應的門開啟或關閉。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品网址在线| 国产伦精品免费视频| 国内精品中文字幕| 亚洲网站在线观看| 成人福利视频网| 97视频色精品| 欧美国产日韩中文字幕在线| 亚洲人成电影网站| 日韩在线观看你懂的| 2019中文字幕免费视频| 国产精品羞羞答答| 久久影视免费观看| 亚洲一区二区三区视频播放| 性欧美在线看片a免费观看| 亚洲男女自偷自拍图片另类| 久久亚洲一区二区三区四区五区高| 久久国产精品偷| 欧美电影在线播放| 91免费版网站入口| 亚洲女性裸体视频| 欧美激情精品久久久久久大尺度| 国产精国产精品| 91精品国产91久久久久福利| 国产成人涩涩涩视频在线观看| 欧美成人激情视频| 国产精品小说在线| 91久久久亚洲精品| 国产91九色视频| 欧美天堂在线观看| 日韩亚洲欧美中文在线| 久久精品国产电影| 欧美黑人xxxⅹ高潮交| 亚洲风情亚aⅴ在线发布| 亚洲一区二区久久久久久久| 久久成人精品电影| 国产精品视频最多的网站| 国产精品久久久久aaaa九色| 国产婷婷成人久久av免费高清| 亚洲精品久久视频| 国产精品99一区| 欧美日韩一区二区免费视频| 国产精品久久久久一区二区| 日本一区二区不卡| 亚洲成人教育av| 91精品国产91久久久| 国产精品白嫩初高中害羞小美女| 色综合影院在线| 久久这里有精品| 色小说视频一区| 韩国精品美女www爽爽爽视频| 日韩av在线网址| 国产精品中文久久久久久久| 97精品在线观看| 久久久电影免费观看完整版| 日韩欧美高清在线视频| 欧美精品久久一区二区| 国产精品av免费在线观看| 日韩美女写真福利在线观看| 国产99久久精品一区二区永久免费| 国产中文日韩欧美| 亚洲综合色av| 国产精品成人aaaaa网站| 国产成人精品av在线| 国产精品高潮粉嫩av| 影音先锋欧美在线资源| 中文字幕自拍vr一区二区三区| 色狠狠av一区二区三区香蕉蜜桃| 97视频免费在线看| 国产精品亚发布| 亚洲国产中文字幕在线观看| 午夜精品一区二区三区av| 亚洲黄色成人网| 91精品免费久久久久久久久| 成人国产精品av| 91中文精品字幕在线视频| 国产一区二区日韩| 久久亚洲春色中文字幕| 亚洲mm色国产网站| 日韩精品免费一线在线观看| 亚洲国产精品成人av| 久久久精品国产网站| 日韩激情视频在线播放| 久久久在线免费观看| 欧美国产精品日韩| 美女久久久久久久| 久久久天堂国产精品女人| 欧美xxxx18性欧美| 亚洲激情视频在线播放| 日韩麻豆第一页| 亚洲精品91美女久久久久久久| 国产精品对白刺激| 国产91在线播放九色快色| 亚洲曰本av电影| 欧美极品美女电影一区| 91精品视频在线播放| 久久久久久91香蕉国产| 国产亚洲精品久久久优势| 91视频免费网站| 日韩在线精品视频| 92看片淫黄大片看国产片| 亚洲全黄一级网站| 亚洲综合日韩中文字幕v在线| 精品人伦一区二区三区蜜桃网站| 欧美日本亚洲视频| 国产精品久久久久国产a级| 久久久久久综合网天天| 91av在线播放| 最近2019年中文视频免费在线观看| 91精品国产91久久久| 深夜福利91大全| 欧美性猛交xxxx乱大交蜜桃| 上原亚衣av一区二区三区| 亚洲娇小xxxx欧美娇小| 国产精品久久久久av| 亚洲精品福利资源站| 亚洲天堂男人天堂女人天堂| 国产精品久久久久9999| 国产精品6699| 亚洲成人久久网| 91久久久久久久| 91精品中国老女人| 久久国产精品首页| 久久久中文字幕| 欧美黄色性视频| 欧美久久精品午夜青青大伊人| 亚洲人成电影在线| 日韩美女视频免费在线观看| 亚洲美女喷白浆| 国产午夜精品美女视频明星a级| 亚洲欧美另类国产| 日韩大陆毛片av| 亚洲激情自拍图| 国产精品欧美亚洲777777| 精品成人久久av| 成人黄色av播放免费| 欧美国产精品日韩| 久久久www成人免费精品| 国产日韩精品入口| 色诱女教师一区二区三区| 色综合男人天堂| 欧美国产日韩一区二区| 日韩在线视频观看正片免费网站| 日韩成人激情影院| 久久手机免费视频| 中文字幕精品一区久久久久| 欧美诱惑福利视频| 黑人巨大精品欧美一区二区三区| 日韩精品免费综合视频在线播放| 一区二区三区亚洲| 亚洲欧美一区二区三区四区| 国产激情久久久久| 国产精品久久久久久久久粉嫩av| 97视频人免费观看| 91香蕉亚洲精品| 丝袜亚洲另类欧美重口| 亚洲男女自偷自拍图片另类| 久久精品精品电影网| 欧美一级在线播放| 91国偷自产一区二区三区的观看方式| 国产一区二区三区在线观看视频| 亚洲天堂av在线免费| 日韩欧美在线视频免费观看| 国产精品一区二区三区在线播放| 国产精品久久网|