高分跪求一个c++程序,积分随便拿!!!!
题目四:实验设备管理系统设计实验设备信息包括:设备编号,设备种类(如:微机、打印机、扫描仪等等),设备名称,设备价格,设备购入日期,是否报废,报废日期等。
主要功能:
1、能够完成对设备的录入和修改
2、对设备进行分类统计
3、设备的破损耗费和遗损处理
4、设备的查询
要求:采用二进制文件方式存储数据,系统以菜单方式工作
题目四:实验设备管理系统设计实验设备信息包括:设备编号,设备种类(如:微机、打印机、扫描仪等等),设备名称,设备价格,设备购入日期,是否报废,报废日期等。
主要功能:
1、能够完成对设备的录入和修改
2、对设备进行分类统计
3、设备的破损耗费和遗损处理
4、设备的查询
要求:采用二进制文件方式存储数据,系统以菜单方式工作
答案:#include <iostream>
#include <string>
#include <fstream>
using namespace std;
typedef struct Student
{
long num;
string name;
string phonenum;
string living;
Student *pnext;
}Stu,*pStu;
static int length = 0;
void StuInfo(Stu *pnow);
Stu* CreateStu();
Stu* AddStu(Stu *phead);
Stu* DelStu(Stu *phead,long num);
Stu* AltStu(Stu *phead,long num);
int SeaStu(Stu *phead,long num);
int ShowStu(Stu *phead);
Stu* StuMenu();
int CheckLink(long num);
int PrintStu(Stu *pstudent);
int main()
{
PrintStu(StuMenu());
return 0;
}
Stu* CreateStu()
{
Stu *phead = NULL;
Stu *pnow;
char choice = 'y';
while(choice == 'y' || choice == 'Y')
{
if(length == 0)
{
cout<<"是否输入学生信息?"<<endl;
cin>>choice;
if(choice == 'y' || choice == 'Y')
{
phead = new Stu;
++length;
cout<<"请输入学生的 学号 姓名 住址 电话 "<<endl<<endl;
cin>>phead->num>>phead->name>>phead->living>>phead->phonenum;
pnow = phead;
}
else
{
break;
}
}
else
{
cout<<"是否继续输入学生信息?"<<endl;
cin>>choice;
if(choice == 'y' || choice == 'Y')
{
pnow->pnext = new Stu;
++length;
pnow = pnow->pnext;
cout<<"请输入学生的 学号 姓名 住址 电话 "<<endl<<endl;
cin>>pnow->num>>pnow->name>>pnow->living>>pnow->phonenum;
}
else
{
break;
}
}
}
pnow->pnext = NULL;
return phead;
}
Stu* AddStu(Stu *phead)
{
Stu *pnow;
pnow = phead;
if(phead == NULL)
{
cout<<"没有学生信息"<<endl;
return 0;
}
while(pnow->pnext != NULL)
{
pnow = pnow->pnext;
}
pnow->pnext = new Stu;
pnow = pnow->pnext;
pnow->pnext = NULL;
cout<<"请输入加入学生的 学号 姓名 住址 电话"<<endl;
cin>>pnow->num>>pnow->name>>pnow->living>>pnow->phonenum;
++length;
return phead;
}
Stu* DelStu(Stu *phead,long num)
{
Stu *pnow,*pfront;
if(phead == NULL)
{
cout<<"没有学生信息"<<endl;
return 0;
}
else
{
pnow = phead;
while(num != pnow->num && pnow != NULL)
{
pfront = pnow;
pnow = pnow->pnext;
}
if(phead->num == num)
{
StuInfo(phead);
phead = phead->pnext;
--length;
}
else if(pnow->num == num && pnow->pnext == NULL)
{
StuInfo(pnow);
pfront->pnext = NULL;
--length;
}
else if(pnow->num == num)
{
StuInfo(pnow);
pfront->pnext = pnow->pnext;
--length;
}
else
{
;
}
}
return phead;
}
void StuInfo(Stu *pnow)
{
cout<<"要删除的学生信息"<<endl;
cout<<"学号:"<<pnow->num<<" 姓名:"<<pnow->name<<" 住址:"<<pnow->living<<" 电话:"<<pnow->phonenum<<endl;
}
Stu* AltStu(Stu *phead,long num)
{
Stu *pnow;
if(phead == NULL)
{
cout<<"没有学生信息"<<endl;
return 0;
}
pnow = phead;
while(pnow != NULL)
{
if(pnow->num == num)
{
cout<<"请重新输入该学生的信息 学号 姓名 住址 电话"<<endl;
cin>>pnow->num>>pnow->name>>pnow->living>>pnow->phonenum;
break;
}
pnow = pnow->pnext;
}
return phead;
}
int SeaStu(Stu *phead,long num)
{
Stu *pnow;
if(phead == NULL)
{
cout<<"没有学生信息"<<endl;
return 0;
}
pnow = phead;
while(pnow != NULL)
{
if(pnow->num == num)
{
cout<<"您要找的学生信息为"<<endl;
cout<<"学号:"<<pnow->num<<" 姓名:"<<pnow->name<<" 住址:"<<pnow->living<<" 电话:"<<pnow->phonenum<<endl;
return 0;
}
pnow = pnow->pnext;
}
cout<<"没有找到该学生"<<endl;
return 0;
}
int ShowStu(Stu *phead)
{
Stu *pnow;
if(phead == NULL)
{
cout<<"没有学生信息"<<endl;
return 0;
}
pnow = phead;
while(pnow != NULL)
{
cout<<"学号:"<<pnow->num<<" 姓名:"<<pnow->name<<" 住址:"<<pnow->living<<" 电话:"<<pnow->phonenum<<endl<<endl;
pnow = pnow->pnext;
}
return 0;
}
Stu* StuMenu()
{
int choice;
char choice1;
long num;
Stu *pstu;
cout<<"请先创建学生信息"<<endl;
pstu = CreateStu();
cout<<"1:删除学生信息"<<endl;
cout<<"2: 修改学生信息"<<endl;
cout<<"3: 查找学生信息"<<endl;
cout<<"4: 所有学生信息"<<endl;
cout<<"5: 增加学生信息"<<endl;
while(1)
{
cout<<"请选择"<<endl;
cin>>choice;
switch(choice)
{
case 1: cout<<"请输入要删除学生的学号"<<endl;
cin>>num;
pstu = DelStu(pstu,num);
break;
case 2: cout<<"请输入要修改学生的学号"<<endl;
cin>>num;
pstu = AltStu(pstu,num);
break;
case 3: cout<<"请输入要查找学生的学号"<<endl;
cin>>num;
SeaStu(pstu,num);
break;
case 4: ShowStu(pstu);
break;
case 5: pstu = AddStu(pstu);
break;
default: cout<<"输入错误请重新输入"<<endl;
}
cout<<"是否继续?"<<endl;
cin>>choice1;
if(choice1 == 'y'
上一个:c++课程设计 高分急求高手解答
下一个:c++程序题补充 继续输入要手动