银行系统多用户初步(动态链表)

来源:互联网 发布:js鼠标移入图片放大 编辑:程序博客网 时间:2024/05/21 05:38

#include<iostream>
#include<string>
using namespace std;
struct stu{
int account;
int password;
int doller;
struct stu*next;
};
void creat(stu*head);
void print(stu*head);
void insert(stu*head);
void del(stu*head);
void picture();
int main()
{char c=NULL;
stu *p,*head;
p=new stu;
head=p;
for(;c!='E' ;)
{
for(;(c<'A')||(c>'E');)
{
  picture();
  cout<<"*       A: 新建用户  "<<endl;
  cout<<"*       B: 增加用户  "<<endl;
  cout<<"*       C: 注销用户  "<<endl;
  cout<<"*       D: 打印用户表  "<<endl;
  cout<<"*       E: 清空用户表"<<endl;
  cout<<"*       F: 退出"<<endl;

cout<<"********请输入你的操作*******"<<endl;
cin>>c;}
switch(c)
{
case 'A': creat(p); break;
case 'B': insert(head);break;
case 'C': del(head);break;
case 'D': print(head);break;
case 'E' :delete p;system("pause");break;
case 'F' :goto end;
}
c=NULL;
}
end:
return 0;
}
//图形
void picture()
{
for(int i=1;i<30;i++)
  cout<<'*';
  cout<<endl;
}
//创建用户
void creat(stu *p)
{
 stu*head=p;
cout<<"输入账户名:";
cin>>p->account  ;
cout<<"输入密码:";
cin>>p->password  ;
cout<<"输入账户已存在金额:";
cin>>p->doller  ;
p->next =NULL;
print(head);
}
//打印
void print(stu*head)
{
 stu *s;
    for(s=head;s!=NULL;s=s->next )
    cout<<"账户:  "<<s->account  <<endl<<"密码:  "<<s->password <<endl<<"佘额:  "<<s->doller  <<endl;
}
//新增用户
void insert(stu*head)
{
stu *p,*s;
for(s=head;s->next!=NULL;s=s->next );
{
p=new stu;
s->next=p;
cout<<"输入账号"<<endl;
cin>>p->account  ;
cout<<"输入密码"<<endl;
cin>>p->password  ;
cout<<"输入账户所存金额"<<endl;
cin>>p->doller ;
p->next =NULL;
}
}
//注销账户
void del(stu*head)
{
int account;
stu *s;
cout<<"请输入需要注销的前一个账户"<<endl;
cin>>account;
for(s=head;s!=NULL;s=s->next )
if(s->account ==account)
s->next=s->next ->next ;
}