C语言实现简单学生学籍管理系统
本文实例为大家分享了C语言实现学生学籍管理系统的具体代码,供大家参考,具体内容如下
#include#include #include #include #defineN100/*存储100个学生的学籍信息*/ intflag;/*标记是否登录*/ structdate/*出生日期*/ { intyear; intmonth; intday; }; structstudent { charnum[20];/*学号*/ charname[25];/*姓名*/ charsex[10];/*性别*/ structdatebirthday;/*出生年月*/ intage;/*年龄*/ charaddr[50];/*籍贯*/ chardept[50];/*系别*/ charmajor[30];/*专业*/ charclasss[30];/*班级*/ charphone[20];/*电话*/ }stu[N]; voidlogin()/*登录*/ { voidmenu(); system("cls"); if(flag) { printf("已经登录!\n"); printf("Pressanykeytocontinue…\n"); getchar(); getchar(); system("cls"); menu(); } intload(); intn,i,m,w; FILE*fp; if((fp=fopen("D:\\file.txt","rb"))!=NULL)/*不是空文件*/ n=load();/*打开文件*/ else n=0; structstudents; charpassword[20]; intd,q; printf("\n\t请选择登录身份:1.管理员2.用户[]\b\b"); scanf("%d",&d); if(d==1) { printf("\n\t\t\t请输入密码:"); getchar(); intj=0; while(1) { password[j]=getch(); if(password[j]=='\r') break; printf("*"); j++; } password[j]='\0'; if(!strcmp(password,"930322"))/*判断密码是否正确*/ { flag=1; printf("\n\t登录成功!\n"); printf("\tPress[Enter]keytocontinue…"); getchar(); system("cls"); menu(); } if(!flag) { printf("\t\n密码错误!\n"); printf("Whatdoyouwanttodonext?1.继续登录2.返回菜单[]\b\b"); scanf("%d",&q); if(q==1)/*继续登录*/ { system("cls"); login(); } elseif(q==2)/*返回主菜单*/ { system("cls"); menu(); } } } else { printf("\n\t\t\t用户名:"); scanf("%s",s.name); printf("\t\t\t密码:"); intj=0; while(1) { password[j]=getch(); if(password[j]=='\r') break; printf("*"); j++; } password[j]='\0'; flag=0;/*未登录时flag=0*/ for(i=0;i 0) printf("用户名不存在或密码错误!\n");/*第一次登录时输入不存在的用户时显示*/ printf("Whatdoyouwanttodonext?1.继续登录2.返回菜单[]\b\b"); scanf("%d",&q); if(q==1)/*继续登录*/ { login(); m=1; } elseif(q==2)/*返回主菜单*/ { system("cls"); menu(); m=1; } else { printf("选择错误!请重新选择:\n"); w=0; } }while(m==0); } } } voidprintf_one(intk)/*输出一个学生的信息*/ { system("color4e"); printf("学号:%s\n",stu[k].num); printf("姓名:%s\n",stu[k].name); printf("性别:%s\n",stu[k].sex); printf("出生年月:%d/%d/%d\n",stu[k].birthday.year,stu[k].birthday.month,stu[k].birthday.day); printf("年龄:%d\n",stu[k].age); printf("籍贯:%s\n",stu[k].addr); printf("系别:%s\n",stu[k].dept); printf("专业:%s\n",stu[k].major); printf("班级:%s\n",stu[k].classs); printf("电话:%s\n",stu[k].phone); } voidprintf_n(intn)/*浏览时输出所有学生的信息*/ { system("color2e"); intj,i=1; for(j=0;j 2) { printf("输入错误!请重新输入!\n"); w2=1; } else w2=0;/*这里要注意:不加这句话会陷入死循环,跳不出来*/ }while(w2==1); if(w1==1)/*按姓名查找*/ { do { k=-1; do { printf("\n请输入您想要查找的学生的姓名!\nName:"); scanf("%s",s.name); for(i=0;i 12||c<1) { puts("\n选择错误!请重新选择!"); getchar(); } }while(c>12||c<1); do { switch(c) { case1:printf("学号:");scanf("%s",stu[i].num);break; case2:printf("姓名:");scanf("%s",stu[i].name);break; case3:printf("性别:");scanf("%s",stu[i].sex);break; case4:printf("出生年月:");scanf("%d/%d/%d",&stu[i].birthday.year,&stu[i].birthday.month,&stu[i].birthday.day);break; case5:printf("年龄:");scanf("%d",&stu[i].age);break; case6:printf("籍贯:");scanf("%s",stu[i].addr);break; case7:printf("系别:");scanf("%s",stu[i].dept);break; case8:printf("专业:");scanf("%s",stu[i].major);break; case9:printf("班级:");scanf("%s",stu[i].classs);break; case10:printf("电话:");scanf("%s",stu[i].phone);break; case11:input(i);break;/*修改这个学生的所有信息*/ case12:menu();/*返回主菜单*/ } puts("\nNow:\n"); printf_one(i);/*输出修改后的这个学生的信息*/ printf("\n确定?\n\n\t1).是2).不,重新修改3).返回不保存[]\b\b"); scanf("%d",&w1); }while(w1==2); return(w1);/*修改成功并选择1后返回1*/ } voidmodify()/*修改*/ { voidmenu(); if(!flag) { printf("\n\n\t请先登录!\n"); printf("\n\t请按Enter键进入登录界面!"); getchar(); getchar(); login(); } else { structstudents; inti,n,k,w0=1,w1,w2=0; n=load(); do { k=-1; //printf_n(n);/*删除之前先显示所有学生的信息*/ do { printf("\n请输入您想要修改的学生的姓名!\nName:"); scanf("%s",s.name); for(i=0;i 7) { system("cls"); printf("选择错误!请重新选择!\n"); w1=1; } else w1=0; }while(w1==1); switch(n) { case1:login();break;/*登录*/ case2:system("cls");insert();break;/*插入*/ case3:system("cls");deleter();break;/*删除*/ case4:system("cls");search();break;/*查找*/ case5:system("cls");modify();break;/*修改*/ case6:system("cls");browse();break;/*浏览*/ case7:exit();break;/*退出*/ } } intmain() { face(); menu(); return0; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。