C++程序设计报告(手机资费系统)

c++程序设计》课程设计报告

 

 

 

 

 

设计题目:手机资费系统

 

班级  15级信息一班            学号  20153873      

 

报告人姓名:  辛靓           

 

指导教师:   费玉奎      

 

实验地点:    山东农业大学南校区计算机实验室      

 

完成起止日期:     2015.6.27—2016.7.1      

 

 

 

 

 

 

 

 

 

 

 

c++程序设计》课程设计报告 1

一、设计思路: 3

一、数据类和操作类,系统功能规划: 3

二、设计问题解决: 4

具体实现: 5

用户类: 5

套餐类: 7

登陆界面: 9

主界面: 9

用户登陆界面: 10

管理员登陆界面: 11

套餐操作: 12

用户操作: 16

运行调试和分析讨论: 22

登陆界面: 23

管理员通道: 23

添加用户: 23

制定套餐: 24

查询用户基本信息: 25

修改用户基本信息: 25

删除用户信息: 26

查询套餐信息: 27

用户通道: 28

查询话费余额: 28

添加账户密码: 29

修改密码: 29

查看个人套餐订阅情况: 30

业务模拟: 31

删除账号密码: 33

设计总结和心得感悟: 34

 

 

 

一、设计思路:

一、数据类和操作类,系统功能规划:

一般设计一个系统都包含数据类和操作类,手机资费系统是面向用户手机资费添加和查询的系统,所以数据类中一定要包含一个用户基本信息类和一个套餐基本信息类,除此之外还添加了用户账号密码密码管理功能,所以又添加了一个账号、密码类;而相应的包含了两个操作类——用户操作类和管理员操作类。

对于手机资费的使用用户基本信息类所包含的数据成员有:

1、用户最基本信息:用户姓名、手机号;

2、套餐代码——进行套餐的添加、选择、查询、更改操作;

3、话费余额——进行话费余额查询、业务模拟操作;

4、剩余通话、剩余流量——进行业务查询、业务模拟操作。

    对于套餐类数据成员有:

1、套餐最基本信息:套餐代码、套餐名称(本套餐主要根据移动和联通的相应业务添加内容);

2、月租、套餐内通话、套餐内流量——管理员添加套餐项目;

3、套餐外通话计费、套餐外流量计费——套餐外计费标准、进行业务模拟。

账号和密码主要用于用户模拟业务;

管理员操作类实现的主要功能分两大类:

1、用户信息操作:

       A)添加用户;

      B)修改用户信息;

      C)删除用户信息;

      D)查询用户基本信息;

      ··············

2、套餐信息操作:

   A)添加套餐;

   B)删除套餐;

   C)修改套餐;

   D)查询套餐;

   ···············

客户端操作类的主要功能:对套餐的增、删、查、改和业务模拟话费查询等····主要如下:

     A)查看话费余额;

     B) 业务办理、查询;

     C)业务模拟;

     D)使用情况;

     

二、设计问题解决:

在操作类内的构造和析构函数内编写文件的读取和储存。实现了程序一运行就将所有内容存入向量组中,在操作完之后再将全部内容重新导出,储存于文件。

二、具体实现:

用户类:

class user

{

    private:

        string name;//姓名

        string number;// 手机号码

       int taocan_id;//套餐代码

        double yue;//余额

        int tonghua;//通话

        double liuliang;//流量

    public:

        user(string na,string nu,int i,double y,int t,double l):name(na),number(nu),taocan_id(i),yue(y),tonghua(t),liuliang(l){}

        user(){}

        string getname(){return name;}

        void setname(string na){name=na;}

        string getnumber(){return number;}

        void setnumber(string nu){number=nu;}

        int gettaocan_id(){return taocan_id;}

        void settaocan_id(int i){taocan_id=i;}

        double getyue(){return yue;}

        void setyue(double y){yue=y;}

        int gettonghua(){return tonghua;}

        void settonghua(int t){tonghua=t;}

        double getliuliang(){return liuliang;}

        void setliuliang(double l){liuliang =l;}

        friend istream& operator>>(istream&is,user&c);

        friend ostream& operator<<(ostream&os,const user&c);

};

istream& operator>>(istream&is,user&c)

{

    is>>c.name>>c.number>>c.taocan_id>>c.yue>>c.tonghua>>c.liuliang;

    return is;

}

ostream&operator<<(ostream&os,const user&c)

{

    os<<"姓名:"<<c.name<<"      ";

    os<<"号码:"<<c.number<<":"<<endl;

    os<<"套餐代码:"<<c.taocan_id<<"     ";

    os<<"余额:"<<c.yue<<"      ";

    os<<"已通话时间:"<<c.tonghua<<"     ";

    os<<"已使用流量:"<<c.liuliang<<endl;

    return os;

}

套餐类:

class taocan

{

private:

    int id;

    string name;

    double cost;//每月花费

    int time;//套餐每月包含的通话时间

    double liu;

    double cost_time;

    double cost_liu;

public:

    taocan(){}

    taocan(int i,string na,double c,int t,double l,double ct,double c

  • 7
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值