学习C#这么长时间了,今天有时间写了个模拟手机缴费的系统,实现几个简单的功能,1.个人信息查询2.现金缴费 3.余额查询 4.业务开通等,更多功能以后会慢慢实现,请大家指出不足,以便共同提高。
Coumter.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Coutmer
{ ///
class Couters
{
private string name;//客户姓名
public string Name
{
get { return name; }
set { name = value; }
}
private decimal mobilemeonry;//客户话费
public decimal Mobilemeonry
{
get { return mobilemeonry; }
set { mobilemeonry = value; }
}
private decimal billminutes;//通话时间
/// <summary>
///
/// </summary>
public decimal Billminutes
{
get { return billminutes; }
set { billminutes = value; }
}
private string personnum;
public string Personnum
{
get { return personnum; }
set { personnum = value; }
}
private char personsex;//客户性别
public char Personsex
{
get { return personsex; }
set { personsex = value; }
}
private string personadd;//客户住址
public string Personadd
{
get { return personadd; }
set { personadd = value; }
}
private string phonenum;
public string Phonenum
{
get { return phonenum; }
set { phonenum = value; }
}
//定义一个打电话类型的枚举
//手机之间进行通信:移动、电信、联通。
/// <summary>
/// 定义一个电话枚举类型
/// </summary>
public enum teletype { Mobilewifi, Telephoneline, ChinaUion }
//定义了一个开通业务的枚举
//GPRS套餐类型
public enum Gprstype { fivemonery,tenmonry,qqmonery}
/// <summary>
/// 显示客户信息
/// </summary>
public void Showinfo()
{
Console.WriteLine("您的姓名为:{0}",name);
Console.WriteLine("您的性别为:{0}",personsex);
Console.WriteLine("您的身份证号码为:{0}",personnum);
Console.WriteLine("您的手机号码为:{0}",phonenum);
Console.WriteLine("您的家庭住址为:{0}",Personadd);
}
/// <summary>
/// 现金缴费
/// </summary>
/// <param name="addmonney"></param>
public void ReCallmoney(decimal addmonney)//现金缴费
{
if (addmonney > 0)
{
mobilemeonry += addmonney;
ShowMobliemonry();
}
else
{
Console.WriteLine("你操作有误,请按任意键返回上层");
Console.ReadKey();
Console.Clear();
ShowUi();
}
}
/// <summary>
/// 判断为何种打电话类型
/// </summary>
/// <param name="ee"></param>
/// <param name="biminutes"></param>
public void BillMonery(teletype ee, decimal biminutes)
{
switch (ee)
{
case teletype.ChinaUion://如果是联通
mobilemeonry -= 0.3m * biminutes;
break;
case teletype.Mobilewifi://移动
mobilemeonry -= 0.1m * biminutes;
break;
case teletype.Telephoneline://座机
mobilemeonry -= 0.2m* biminutes;
break;
default:
break;
}
}
/// <summary>
/// 友情提示
/// </summary>
public void Clockbill()//友情提醒
{
if (Mobilemeonry < 20)
Console.WriteLine("您的余额已不足20元,为了保证您的正常通信,请及时缴费");
else
Console.WriteLine("您的余额充足");
}
/// <summary>
/// 显示系统菜单
/// </summary>
public void ShowUi()//系统显示界面
{
Console.WriteLine("请选择0~3的操作:");
Console.WriteLine("0-个人信息查询");
Console.WriteLine("1-余额查询");
Console.WriteLine("2-现金缴费");
Console.WriteLine("3-业务办理");
Console.WriteLine("4-返回上层");
}
//显示余额的方法
/// <summary>
///
/// </summary>
public void ShowMobliemonry()
{
Console.WriteLine("您的余额为:{0}", mobilemeonry);
}
/// <summary>
///
/// </summary>
public void ShowActive()
{
Console.WriteLine("请选择您要开通的业务:");
Console.WriteLine("************************");
Console.WriteLine("* 0- 开通5元GPRS(30M流量) *");
Console.WriteLine("* 1- 开通10元GPRS(80M流量) *");
Console.WriteLine("* 2- 开通超级qq (10元/月) *");
Console.WriteLine("* 3- 返回上层 *");
}
/// <summary>
/// 开通业务计算方法
/// </summary>
/// <param name="gprs"></param>
public void Gprsmonry(Gprstype gprs)
{
switch (gprs)
{
case Gprstype.fivemonery:
mobilemeonry -= 5;
break;
case Gprstype.tenmonry:
mobilemeonry -= 10;
break;
case Gprstype.qqmonery:
mobilemeonry -= 10;
break;
default:
break;
}
}
//
/// <summary>
/// 返回上册操作
/// </summary>
public void Upmnue()
{
Console.Clear();
ShowUi();
}
}
}
Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Coutmer
{
class Program
{
static void Main(string[] args)
{
int flag;
Couters ws = new Couters();
ws.Name = "xx";
ws.Personsex = '女';
ws.Personadd = "陕西";
ws.Mobilemeonry = 120m;
ws.Billminutes = 30;
ws.Personnum = "61050211992xxxxx";
ws.Phonenum = "1870xxxxxx";
ws.BillMonery(Couters.teletype.Mobilewifi, ws.Billminutes);
Console.WriteLine("尊敬的客户欢迎进入中国移动网上缴费大厅,请选择你要服务:");
ws.ShowUi();
while (true)
{
flag = Convert.ToInt32(Console.ReadLine());
switch (flag)
{
case 0:
ws.Showinfo();//显示客户信息
break;
case 1:
ws.ShowMobliemonry();//显示客户余额
break;
case 2:
Console.WriteLine("请输入你要交的钱数:");
ws.ReCallmoney(Convert.ToDecimal(Console.ReadLine()));
break;
case 3:
Console.WriteLine("请选择你要开通的业务:");
ws.ShowActive();//调用业务菜单
int gprsflag=Convert.ToInt32(Console.ReadLine());
while(true)
{
switch (gprsflag)
{
case 0://开通5元Gprs
ws.Gprsmonry(Couters.Gprstype.fivemonery);
// ws.ShowMobliemonry();
break;
case 1://开通10元Gprs
ws.Gprsmonry(Couters.Gprstype.tenmonry);
// ws.ShowMobliemonry();
break;
case 2://开通超级qq
ws.Gprsmonry(Couters.Gprstype.qqmonery);
// ws.ShowMobliemonry();
break;
case 3:
ws.Upmnue();//返回上层操作
break;
default:
break;
}
}
case 4:
ws.Upmnue();//返回上层操作
break;
default:
break;
}
}
Console.ReadKey();
}
}
}
结果: