c语言学生信息管理系统1Word下载.docx
《c语言学生信息管理系统1Word下载.docx》由会员分享,可在线阅读,更多相关《c语言学生信息管理系统1Word下载.docx(33页珍藏版)》请在冰豆网上搜索。
![c语言学生信息管理系统1Word下载.docx](https://file1.bdocx.com/fileroot1/2023-1/22/f0157593-83ed-4f24-828d-f4e061db56c0/f0157593-83ed-4f24-828d-f4e061db56c01.gif)
//总成绩
}stu[N],ts;
structadmin//管理员结构体
{
//管理员编号
//密码
}adm[N],ta;
structteacher//教师结构体
//教师编号
}thr[N],tt;
intID;
//登录号
inti,j;
intlen=0;
//学生人数
intlent=0;
//老师人数
intlena=0;
//管理员人数
voidsave()//保存信息
FILE*fp;
if((fp=fopen("
student.txt"
"
w"
))==NULL)//打开文件
{
printf("
文件打开失败!
"
);
exit(0);
}
for(i=0;
i<
len;
i++)//写入文件
{
fprintf(fp,"
%s\t%s\t%s\t%s\t%s\t%s\t%s\t%d\t%d\t%d\t%d\t\n"
stu[i].num,stu[i].name,stu[i].code,stu[i].sex,stu[i].depart,stu[i].addr,stu[i].tel,stu[i].age,stu[i].elec,stu[i].requ,stu[i].sum);
fclose(fp);
//关闭文件
if((fp=fopen("
teacher.txt"
))==NULL)//打开教师文件
lent;
%s\t%s\t\n"
thr[i].num,thr[i].code);
admin.txt"
))==NULL)//打开管理员文件
lena;
adm[i].num,adm[i].code);
}
voidload()//读取信息
r"
fopen("
//创建文件
gotoloop1;
i=0;
while(!
feof(fp))//读取文件
fscanf(fp,"
%s%s%s%s%s%s%s%d%d%d%d"
&
stu[i].num,&
stu[i].name,&
stu[i].code,&
stu[i].sex,&
stu[i].depart,&
stu[i].addr,&
stu[i].tel,&
stu[i].age,&
stu[i].elec,&
stu[i].requ,&
stu[i].sum);
if(!
feof(fp))
i++;
len=i;
//数量
loop1:
gotoloop2;
fscanf(fp,"
%s%s"
thr[i].num,&
thr[i].code);
if(!
lent=i;
//教师数量
loop2:
strcpy(adm[0].num,"
123"
//初始化初始账号
strcpy(adm[0].code,"
//初始化初始密码
lena=1;
save();
//保存
return;
adm[i].num,&
adm[i].code);
lena=i;
//管理员数量
//关闭文件
}
charmenu_login()//登陆菜单
charch;
system("
cls"
//清屏
\n\n\n\n"
---★------------------------中国海洋大学青岛学院---------------------★---\n"
\n"
---★-------------------------欢迎使用-----------------------★---\n"
printf("
---★--------------------------学生信息管理系统------------------------★---\n"
\n\n"
\t\t\t|-------------Login----------|\n"
\t\t\t|\t1.帮助【必看】|\n"
\t\t\t|\t2.学生登陆|\n"
\t\t\t|\t3.教师登录|\n"
\t\t\t|\t4.管理员登录|\n"
\t\t\t|\t5.退出|\n"
---★------------------------------------------------------------------★---\n"
\t\tchoose(1-5):
请选择:
ch=getchar();
getchar();
//消除缓存中的换行符
returnch;
voidhelp()
COLOR2f"
---★---------------欢迎使用--------------★---\n"
\n尊敬的用户您好!
\n============================================================\n||"
\n|1.欢迎进入帮助系统!
|\n||"
\n|★★★★★★★★|\n||"
\n|2.请按照菜单提示进入数字代号!
\n|3.教师和学生信息由管理员写入!
\n|4.成绩为-1表示尚未录入成绩!
\n|5.初始管理员初始登录账号:
123密码:
123!
\n|6.谢谢您的使用!
\n|7.教师和学生首次登陆账号和密码由管理员给定|\n||"
\n============================================================\n"
请按任意键进入登录界面:
..."
getch();
voidexit1()
system("
COLOR3f"
printf("
--------【学生信息管理系统】-------\n"
制作人:
【王汝通】\n"
================================================================================\n"
●☆☆Bye-Bye☆☆●\n"
★★★★★★★★★★★★★★★★★★★★★★★★★★★★\n"
\n"
☆☆☆☆☆☆☆☆☆☆☆\n"
★★★★★★★★★★★\n"
海★10级\n"
★软\n"
大★件\n"
★工\n"
青★程\n"
★一\n"
院★班\n"
★\n"
◆谢谢使用◆\n"
exit(0);
charmenu_stu()//学生菜单
\n\n\n\n\n"
---★------------------------中国海洋大学青岛学院----------------------★---\n"
---★-----------------------欢迎使用---------------------★---\n"
\t\t|-------------STUDENT----------|\n"
\t\t|1.个人信息查询|\n"
\t\t|2.修改密码|\n"
\t\t|3.退出|\n"
\t\t|------------------------------|\n"
\t\t\tchoose(1-3):
//消除回车符
voidsrh_gr()//个人信息查询
我(%s)的信息如下:
stu[i].name);
__________________________________________________________________________\n"
学号姓名年龄性别系部住址电话选修专业总分\n\n"
%-8s%-8s%-6d%-6s%-8s%-8s%-8s%-6d%-6d%d\n"
stu[ID].num,stu[ID].name,stu[ID].age,stu[ID].sex,stu[ID].depart,stu[ID].addr,stu[ID].tel,stu[ID].elec,stu[ID].requ,stu[ID].sum);
查询完毕,任意键返回..."
voidmod_code_stu()//修改密码
charcd0[10],cd1[10],cd2[10];
请输入原密码:
gets(cd0);
if(strcmp(cd0,stu[ID].code)==0)//与原密码相同
while
(1)
请输入新密码:
gets(cd1);
请再次输入新密码:
gets(cd2);
if(strcmp(cd1,cd2)==0)//两次密码相同
strcpy(stu[ID].code,cd1);
//修改密码
save();
修改成功,任意键返回。
getch();
return;
else//两次输入密码不同
两次输入密码不同,请重来。
else//与原密码不同
对不起!
您输入的密码错误,任意键返回。
voidlogin_stu()//学生登录
charnum[10],code[10];
\n\n\n请输入学号:
"
gets(num);
i++)
if(strcmp(num,stu[i].num)==0)//比较学号是否相同
{
break;
}
if(i==len)
没有这个学号。
任意键返回。
ID=-1;
//-1表示登录失败
else
请输入密码:
gets(code);
while(strcmp(code,stu[i].code)!
=0)//密码不同
密码错误,请重新输入:
gets(code);
ID=i;
//记住登录号
voidstudents()//学生系统
login_stu();
//登录
if(ID==-1)
//登录失败,返回
ch=menu_stu();
//学生菜单
switch(ch)
case'
1'
:
srh_gr();
break;
//个人信息查询
case'
2'
mod_code_stu();
3'
//返回上一级
}
voidlogin_thr()//教师登录
\n\n\n请输入教师编号:
if(strcmp(num,thr[i].num)==0)//比较编号是否相同
if(i==lent)
没有这个管理员编号。
while(strcmp(code,thr[i].code)!
charmenu_thr()//教师菜单
\t\t|-------------TEACHER----------|\n"
\t\t|\t1.密码修改|\n"
\t\t|\t2.学生成绩的录入|\n"
\t\t|\t3.学生信息的查询|\n"
\t\t|\t4.学生成绩的显示(排序)|\n"
\t\t|\t5.退出|\n"
\t\t\tchoose(1-5):
//获取选择
/*voidmodefy()//成绩修改
请输入要修改成绩的学生学号:
if(strcmp(num,stu[i].num)==0)//学号是否相同
//相同结束查找
没有这个学号记录,任意键返回。
请输入专业课成绩:
scanf("
%d"
stu[i].requ);
请输入选修课成绩:
stu[i].elec);
//消除回车
stu[i].sum=stu[i].requ+stu[i].elec;
//总成绩
save();
成绩修改完成,任意键返回。
*/
voidmod_code_thr()//密码修改
charcd0[10],cd1[10],cd2[10];
if(strcmp(cd0,thr[ID].code)==0)//与原密码相同
strcpy(thr[ID].code,cd1);
prin