C++学生信息管理系统Word文件下载.docx
- 文档编号:22753607
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:21
- 大小:18.77KB
C++学生信息管理系统Word文件下载.docx
《C++学生信息管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++学生信息管理系统Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
地址:
add<
年龄:
age<
手机号:
phone<
密码"
mima0<
}//学生信息输出
jiemian(){
————————————————————————————————"
***1.查询学生信息***"
***2.输入2退出系统***"
}//学生登录界面
classadmi:
publicstudent
voiddestroy(studentb[1000],intj);
voidchuangjian();
voidxiugai();
voidinput();
voidpaixu(student*b);
voidjia();
voiddisplay();
friendintmima(intw);
private:
intnum;
intmima;
//管理员类
voidadmi:
管理员编号密码"
<
setw(8)<
num
mima<
}
———————————————————————————————"
***0.输出管理员信息1.信息的输入***"
***2.学生信息的显示3.修改学生信息***"
***4.删除学生5.查询学生信息***"
***6.统计人数7.排序功能***"
***8.增加学生信息9.输入9退出系统***"
//管理员登录界面
chuangjian(){
inti;
输入权限密码"
cin>
>
i;
if(i==qp)
{
inta,b;
cout<
输入新的管理员信息:
编号密码"
cin>
a>
b;
num=a;
mima=b;
}
else
{
输入密码错误,程序关闭"
exit(0);
//输入文件默认密码修改管理员信息,密码错误则关闭程序
intw(){
ifstreamis;
is.open("
F:
学生信息文件.txt"
ios_base:
in|ios_base:
binary);
inti=0,l;
chark;
while((k=is.get())!
=EOF)
i++;
l=sizeof(student);
returni/l;
}//返回文件记录学生数total
intq()
while
(1)
inth;
确定输入?
1确定,0重新输入"
h;
if(h==1)
returnTURE;
elseif(h==0)
{
cout<
重新输入信息"
returnFALSE;
}
else
请输入0或1"
continue;
}
}
}//确定是否输入函数
voidglycj()
ofstreamfile;
admia;
a.chuangjian();
file.open("
管理员信息文件.txt"
binary|ios_base:
trunc);
//只有一个管理员
file.write(reinterpret_cast<
char*>
(&
a),sizeof(admi));
file.close();
}//管理员信息修改后存储
intmima(){
studenta[1000];
ifstreamis("
if(is)
is.read(reinterpret_cast<
(a),total*sizeof(student));
ERROR:
Cannotopenfile'
学生信息文件'
inti,m;
chart[20];
输入学生姓名、密码"
t>
m;
for(i=0;
i<
total;
i++)
if(strcmp(a[i].name,t)==0)
{
if(m==a[i].mima0)
is.close();
returnTURE;
//学生登录成功返回1
//学生登录失败返回0
无此学生"
i=mima();
returni;
}//学生登录密码
intmima(intw){
intn,m;
输入管理员编号、密码:
n>
if(n==a.num)
//代号输入正确
if(m==a.mima)
//密码正确返回1
//密码错误返回0
is.close();
//管理员代号错误,重新输入
无此管理员"
i=mima
(1);
}//管理员登录密码函数
intdenglu(){
inti,h;
学生登录输入1管理员登录输入0"
h=q();
//管理员登录
if(h&
&
i==0)
if(mima
(1))
return1;
else
inti1;
密码错误重新输入按1,返回输入0"
cin>
i1;
if(i1==1)
continue;
elseif(i1==0)
{
i1=denglu();
returni1;
else
cout<
输入错误,重新输入密码"
//学生登录
elseif(h&
i==1)
if(mima())
cout<
学生登录成功"
returnFALSE;
inti2;
i2;
if(i2==1)
elseif(i2==0)
i2=denglu();
returni2;
输入错误,请重新输入密码"
//错误输入,重新输入
inti3;
请输入数0或1"
i3=denglu();
returni3;
}//登录函数
input(){
输入:
姓名学号班级地址年龄手机号密码"
name>
number>
class1>
add>
age>
phone>
mima0;
}//输入学生信息函数
xiugai(){
把姓名改为:
name;
把学号改为:
number;
把班级改为:
class1;
把地址改为:
add;
把年龄改为:
age;
把手机号改为:
phone;
把密码改为:
}//修改函数
destroy(studentb[1000],intj){
total--;
for(;
j<
=total;
j++)
b[j]=b[j+1];
}//删除学生信息函数
search(){
}//搜索函数
voidtongji(){
if(total>
0){
总学生数为:
total<
学生数为零"
}//统计函数
paixu(student*b){
inth;
studentp[1000];
for(h=0;
h<
total-1;
h++)
if(b[h].number>
b[h+1].number){
p[h]=b[h];
b[h]=b[h+1];
b[h+1]=p[h];
}//排序函数
voidfun(student*ptr){
ptr->
display();
jia(){
}//增加学生函数
voidmain()
total=w();
//学生总数
inti,h,gongneng;
是否修改管理员?
输入0修改"
h=q();
if(h==0)
continue;
elseif(h&
glycj();
//修改管理员
break;
elseif(i!
=0)
不修改管理员"
inty=denglu();
//根据y数值判读选择学生登录和管理员登录
if(y)//管理员登录
ofstreamos;
os.open("
app);
if(!
os){
创建文件失败"
os.close();
ifstreamis("
if(is)
is.read(reinterpret_cast<
Cannptopenfile'
is.close();
//打开学生文件并奖文件信息传递给a【1000】
while
(1){
admi:
jiemian();
//输出管理员界面
请输入你要选择的服务"
gongneng;
//选择1~9九种功能
if(gongneng==0)
admia;
ifstreamis("
if(is)
fun(&
a);
//输出管理员信息
elseif(gongneng==1){
intn;
请问你要输入几个学生的信息?
cin>
n;
for(i=0;
i++){
//创建管理员类,通过兼容性对学生信息初始化
admix;
x.input();
a[total+i]=x;
total=total+n;
//学生数增加n个
}//输入学生信息
elseif(gongneng==2){
if(total>
0)
for(i=0;
fun(&
a[i]);
没有学生信息"
}//显示所有学生信息
elseif(gongneng==3){
chart[20];
//学生数不为零情况下输出
输入要修改学生的姓名"
t;
intm=0;
if(strcmp(a[i].name,t)==0){
//通过兼容系将新的信息复制给被修改学生
admix;
x.xiugai();
a[i]=x;
m=i+1;
}
if(m==0)
没有该学生"
}//通过学生姓名搜索并修改学生信息
elseif(gongneng==4){
输入要删除的学生的姓名"
x.destroy(a,i);
}//通过姓名查找,删除学生信息
elseif(gongneng==5){
输入你要查询的学生的姓名"
if(strcmp(a[i].name,t)==0)
{
a[i].search();
}//通过姓名查询学生信息
elseif(gongneng==6){
tongji();
}//统计人数
elseif(gongneng==7){
inti=0;
x.paixu(a);
}//按照学号进行排序
elseif(gongneng==8){
intn,i;
请问你要输入几个学生信息"
for(i=total;
total+n;
//通过兼容性用admi类初始化新增学生信息
x.jia();
a[i]=x;
}//增加n个学生信息
elseif(gongneng==9){
谢谢使用!
}//结束程序
请输入数字0到9"
}//输入错误提示
os.write(reinterpret_cast<
//关闭文件
elseif(!
y)//学生登录
if(is)
//打开学生文件,将信息传递给a【1000】
student:
//输出学生操作界面
//选择功能
//输入1查询
if(gongneng==1){
if(strcmp(a[i].name,t)==0)
//输入2退出程序
//提示输入错误
请输入数字1到3"
//关闭文件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 学生 信息管理 系统