国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

C語言學生學籍管理系統課程設計

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

C語言學生學籍管理系統做了好長時間的,里面有點小問題,希望大佬找到并幫忙改改,注意輸入密碼三次錯誤會自動注銷用戶,密碼123456

代碼:

#include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> struct student {   char xuehao[100];//輸入學號   char name[100];//輸入姓名   char sex[100];//輸入性別   int age;//輸入年齡   char jiguan[100];//輸入籍貫   char dianhua[100];//輸入電話   char yuanxi[100];//輸入院系   char banji[100];//輸入班級 } stu[1000]; void shouye()//首頁 {   int i;   printf("^-^-----------------------------------------------------^-^/n");   printf("/n");   printf(" $        歡迎使用學生學籍管理系統!        $/n");   printf(" $              制作人:          $/n");   printf(" $                  李威鵬       $/n");   printf(" $              時間:2017.12        $/n");   printf("/n");   printf("^-^-----------------------------------------------------^-^/n");   printf("Enter鍵繼續!");   getchar();   system("cls"); } void zhuxiao()//注銷用戶 {   system("shutdown -f "); } void denglu()//登陸 {   void menu();   int i,j;   char mima[16];   for(j=1; j<=4;)   {     if(j==4)       break;     else if(j<4)     {       printf("請輸入6位密碼:/n");       printf("剩余輸入次數%d/n",4-j);       for(i=0; i<6; i++)       {         mima[i]=getch();         printf("*");       }     }     mima[i]='/0';     if(strcmp(mima,"123456")==0)     {         system("cls");       printf("密碼正確/n");       printf("登陸成功!/n");       printf("按Enter鍵繼續!");       getchar();       menu();       return;       }     else     {       system("cls");       printf("密碼錯誤/n");       j++;     }   }   printf("注銷用戶!!!/n");   zhuxiao();   getch();   } void menu()//菜單 {   system("cls");   printf("*-----------------------------學生管理系統--------------------------------*/n");   printf("/n");   printf("1.添加學生信息  2.刪除某個學生信息   3.瀏覽學生信息/n");   printf("4.修改學生信息  5.查找某個學生信息   6.顯示信息數量/n");   printf("0.退出系統/n");   printf("/n");   printf("*-------------------------------------------------------------------------*/n");   } void save(int m) {   int i;   FILE*fp;   if ((fp=fopen("系統","wb"))==NULL)   {     printf ("文件打開失敗/n");     exit(0);   }   for (i=0; i<m; i++)     if (fwrite(&stu[i],sizeof(struct student),1,fp)!=1)       printf("文件打開失敗/n");   fclose(fp); } int load()//打開文件,讀取里面的數據 {   FILEFILE *fp;   int i=0;   if((fp=fopen("系統","rb"))==NULL)   {     printf ("文件打開失敗/n");     exit(0);   }   else   {     do     {       fread(&stu[i],sizeof(struct student),1,fp);       i++;     }     while(feof(fp)==0);   }   fclose(fp);   return(i-1); } int menuchoose()//選擇菜單 {   int n;   menu();   printf("請選擇菜單0~6:");   while(1 != scanf("%d", &n) || n < 0 || n> 6)   {     menu();     printf("選擇菜單錯誤,請重新選擇(0 ~ 6):");     fflush(stdin);//清空輸入緩沖區   }   return n; } void add()//添加學生信息 {   int i,m,q,s=1;   system("cls");   printf("---------------輸入學生信息---------------/n");   printf("請輸入需要添加學生的總人數:/n");   scanf("%d",&m);   for (i=0; i<m; i++)   {     printf("/n輸入第 %d 個學生學籍信息./n",i+1);     printf("請輸入學號:");     scanf("%s",stu[i].xuehao);     for(q=0; q<m; q++)     {       if(strcmp(stu[q].xuehao,stu[i].xuehao)==0&&q!=i)       {         printf("該學號已經存在,請重新輸入:/n");         printf("請輸入學號:/n");         s=1;         scanf("%s",stu[q].xuehao);       }     }     printf("請輸入姓名:");     scanf("%s",stu[i].name);     printf("請輸入性別:");     scanf("%s",stu[i].sex);     printf("請輸入年齡:");     scanf("%d",&stu[i].age);     getchar();     printf("請輸入籍貫:");     scanf("%s",stu[i].jiguan);     printf("請輸入電話:");     scanf("%s",stu[i].dianhua);     printf("請輸入院系:");     scanf("%s",stu[i].yuanxi);     printf("請輸入班級:");     scanf("%s",stu[i].banji);   }   save(m); } void show() {   system("cls");   int i;   int m=load();   if(m==0)   {     printf("/n暫無學生信息!/n");     printf("是否添加學生信息?/n   是:1  否:2/n");     int a2;     scanf("%d",&a2);     if(a2==1)       add();     else       menu();   }   else   {     printf("----------------------瀏覽學生信息--------------------------/n");     printf("/n");     printf("/t/t/t/t/t/t/t/n");     for(i=0; i<m; i++)     {        printf("第%d位同學的信息為:/n",i+1);     printf("學號:%s/n",stu[i].xuehao);     printf("姓名:%s/n",stu[i].name);     printf("性別:%s/n",stu[i].sex);     printf("年齡:%d/n",stu[i].age);     printf("籍貫:%s/n",stu[i].jiguan);     printf("電話:%s/n",stu[i].dianhua);     printf("院系:%s/n",stu[i].yuanxi);     printf("班級:%s/n",stu[i].banji);     }     system("pause");   } } void del() {     int m=load();   int i,j,n,t,flag;   char xuehao[20];   printf("/n 原有的學生信息為:/n");   show();   printf("/n");   printf("請輸入要刪除的學生的學號:/n");   scanf("%s",xuehao);   for(flag=1,i=0; flag&&i<m; i++)   {     if(strcmp(stu[i].xuehao,xuehao)==0)     {        printf("學號:%s/n",stu[i].xuehao);     printf("姓名:%s/n",stu[i].name);     printf("性別:%s/n",stu[i].sex);     printf("年齡:%d/n",stu[i].age);     printf("籍貫:%s/n",stu[i].jiguan);     printf("電話:%s/n",stu[i].dianhua);     printf("院系:%s/n",stu[i].yuanxi);     printf("班級:%s/n",stu[i].banji);       printf("是否要刪除此人信息?/n是請按1,否請按0:/n");       scanf("%d",&n);       if(n==1)       {         for(j=i; j<m-1; j++)         {           strcpy(stu[j].name,stu[j+1].name);           strcpy(stu[j].xuehao,stu[j+1].xuehao);           strcpy(stu[j].sex,stu[j+1].sex);           stu[j].age=stu[j+1].age;           strcpy(stu[j].yuanxi,stu[j+1].yuanxi);           strcpy(stu[j].banji,stu[j+1].banji);           strcpy(stu[j].jiguan,stu[j+1].jiguan);           strcpy(stu[j].dianhua,stu[j+1].dianhua);         }         flag=0;       }     }   }   if(!flag)     m=m-1;   else     printf("/n無此人信息!/n");   save(m);   printf("/n是否繼續刪除信息/n 繼續請按1/n退出請按0/n");   scanf("%d",&t);   switch(t)   {   case 1:     del();     break;   case 0:     menu();     break;   default :     break;   } } void xiugai()//修改學生信息 {   system("cls");   FILEFILE *fp;   int n,i,j,c,x,y;   char m[10];   n=load();   show();   printf("請輸入要修改學生的學號或姓名:");   scanf("%s",&m);   do   {     printf("/n請選擇要修改的選項:/n/n1.學號 2.姓名 3.性別 4.年齡 5.籍貫 6.電話 7.院系 8.班級 9.取消并返回/n");     printf("請選擇?:/n ");     scanf("%d",&c);     if(c>9||c<1)     {       menu();       puts("/n選擇錯誤!請重新選擇!");       fflush(stdin);//清空輸入緩沖區     }   }   while(c>9||c<1);   for (i=0; i<n; i++)     if (!strcmp(stu[i].xuehao,m)||!strcmp(stu[i].name,m))     {       switch (c)       {       case 1:         printf("學號:");         scanf("%s",stu[i].xuehao);         break;       case 2:         printf("姓名:");         scanf("%s",stu[i].name);         break;       case 3:         printf("性別:");         scanf("%s",stu[i].sex);         break;       case 4:         printf("年齡:");         scanf("%d",&stu[i].age);         break;       case 5:         printf("籍貫:");         scanf("%s",stu[i].jiguan);         break;       case 6:         printf("電話:");         scanf("%s",stu[i].dianhua);         break;       case 7:         printf("院系:");         scanf("%s",stu[i].yuanxi);         break;       case 8:         printf("班級:");         scanf("%s",stu[i].banji);         break;       case 9:         menu();/*返回主菜單*/       }       printf("是否保存?/n");       printf("是:1/n否:2/n");       scanf("%d",&x);     }   if(x==1)   {     save(n);     printf("保存成功!/n");     printf("是否繼續修改?繼續:1 否:2/n");     int p;     scanf("%d",&p);     if(p==1)     {       xiugai();     }     else     {       menu();     }   }   else   {     printf("退出請按0,繼續修改請按1/n");     scanf("%d",&y);     switch(y)     {     case 0:       break;     case 1:       xiugai();       break;     }   } } void showone(int c) /*輸出一個學生的信息*/ {    printf("學號:%s/n",stu[c].xuehao);     printf("姓名:%s/n",stu[c].name);     printf("性別:%s/n",stu[c].sex);     printf("年齡:%d/n",stu[c].age);     printf("籍貫:%s/n",stu[c].jiguan);     printf("電話:%s/n",stu[c].dianhua);     printf("院系:%s/n",stu[c].yuanxi);     printf("班級:%s/n",stu[c].banji); } void chazhao()//查找某個學生的信息 {   system("cls");   FILE*fp;   int a1,b1,c1,d1,e1,n,i;   char t[10];   n=load();   printf("請輸入要查找的學生的學號或姓名:");   scanf("%s",t);   for(i=0; i<n; i++)     if (!strcmp(stu[i].xuehao,t)||!strcmp(stu[i].name,t))     {        printf("學號:%s/n",stu[i].xuehao);     printf("姓名:%s/n",stu[i].name);     printf("性別:%s/n",stu[i].sex);     printf("年齡:%d/n",stu[i].age);     printf("籍貫:%s/n",stu[i].jiguan);     printf("電話:%s/n",stu[i].dianhua);     printf("院系:%s/n",stu[i].yuanxi);     printf("班級:%s/n",stu[i].banji);       printf("是否繼續查找?繼續:1  返回主菜單:2/n");       scanf("%d",&c1);       switch(c1)       {       case 1:         chazhao();         return ;       case 2:         system("cls");         menu();         return;       }     }   if (strcmp(stu[i].xuehao,t)||strcmp(stu[i].name,t))   {     printf("無該學生信息!/n");     printf("是否繼續查找?  繼續:1  返回主菜單:2/n");     scanf("%d",&b1);     switch(b1)     {     case 1:       chazhao();       return;     case 2:       menu();       return ;     }   } } void shuliang() {   system("cls");   int n,h;   n=load();   printf("共有 %d 個學生的記錄./n",n);   if(n==0)   {     printf("暫無學生信息!/n");     system("pause");     menu();   }   else   {     printf("是否顯示學生信息?/n是:1  否:2/n");     scanf("%d",&h);     if(h==1)     {       show();     }     else     {       menu();     }   }   menu(); /*返回主函數*/ } int main() {   shouye();   denglu();   int test=1;   while(test)   {     switch(menuchoose())     {     case 0:       test=0;       printf("/n            ^-^謝謝使用!^-^     /n");       printf("       代碼有點長,錯誤也有點多,望見諒^-^/n");       break;     case 1://增加學生學籍信息       add();       break;     case 2://刪除某個學生信息       del();       break;     case 3://顯示學生信息       show();       break;     case 4://修改學生信息       xiugai();       break;     case 5://查找某個學生信息       chazhao();       break;     case 6:       shuliang();//顯示學生學籍數量       break;     }   }   return 0; } 

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

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

圖片精選

主站蜘蛛池模板: 都江堰市| 陵川县| 北宁市| 泽库县| 托克逊县| 靖宇县| 长治县| 澜沧| 乌苏市| 西城区| 历史| 西乌| 定陶县| 彰化县| 太仆寺旗| 名山县| 台中市| 萝北县| 桑植县| 灯塔市| 当阳市| 宜都市| 阿克苏市| 巴彦县| 池州市| 根河市| 新绛县| 密云县| 信宜市| 开化县| 岳西县| 堆龙德庆县| 盐边县| 林口县| 雅江县| 迭部县| 裕民县| 淮阳县| 营口市| 中方县| 陵川县|