要求说明
1. 定义客户类Customer,客户的属性包括不限于:
客户ID(CustomerId):唯一标识客户的主键。
姓名(CustomerName):客户的姓名。
性别(Gender):客户的性别,可以是男(False)或女(True)。
年龄(Age):客户的年龄。
手机号码(Phone):客户的手机号码。
邮箱(Email):客户的电子邮件地址。
2. 客户管理系统功能包含:
添加客户
删除客户
修改客户
查询客户
3。实现步骤提示:
程序运行时,提示用户选择功能 “请按相应的数字键选择功能:【1】添加客户 【2】查询客户 【3】修改客户 【4】删除客户”
如果选择1:开始收集客户信息,提示用户输入客户相关信息(请参考客户类),输入完成后,添加到数组Customer[] customers中。
添加成功后,让用户选择是否继续添加 【1】继续添加 【2】返回上级
如果选择2:查询客户信息,要求能查询所有,或者按客户姓名模糊查询即可!查询结果,以表的形式展示到控制台。
展示成功后,提示用户选择功能 “请按相应的数字键选择功能:【1】添加客户 【2】查询客户 【3】修改客户 【4】删除客户”
如果选择3:修改客户信息,展示已存在的客户列表,让用户选择要修改的客户ID,选择客户后,让用户输入要修改的客户信息(请参考客户类,不让改客户ID)
修改完成后,重新展示所有客户信息。
如果选择4:删除客户信息,展示已存在的客户列表,让用户选择要删除的客户ID,选择客户后,删除此选择客户,删除完成后,重新性展示所有客户信息。
主程序入口
internal class Program
{
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("\t========客户管理系统========\t");
Console.WriteLine("\t\t1.添加客户\t");
Console.WriteLine("\t\t2.查询客户\t");
Console.WriteLine("\t\t3.修改客户\t");
Console.WriteLine("\t\t4.删除用户\t");
Console.WriteLine("请按相应的数字键选择功能:");
int op = int.Parse(Console.ReadLine());
switch (op)
{
case 1: AddCustomer(); break;
case 2: CheckCustomer(); break;
case 3: ModifyCustomer(); break;
case 4: Remove(); break;
default:
Console.WriteLine("出现错误!");
break;
}
}
}
static public void AddCustomer() { }
static public void CheckCustomer() { }
static public void ModifyCustomer() { }
static public void Remove() { }
}
Customer类
internal class Customer
{
public static Customer[] customers = new Customer[] { };
private string _customerId;
private string _customerName;
private string _gender;
private int _age;
private string _phone;
private string _email;
Regex reg = new Regex("/^1[3|4|5|7|8][0-9]{9}$/");
Regex reg1 = new Regex("^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$");
public Customer(string customerId,string customerName, string gender, int age, string phone,string email)
{
this.CustomerId = customerId;
this.CustomerName = customerName;
this.Gender = gender;
this.Age = age;
this.Phone = phone;
this.Email = email;
}
public string CustomerId
{
get { return _customerId; }
set { _customerId = value; }
}
public string CustomerName { get; set; }
public string Gender
{
get { return _gender; }
set { _gender = value == "False" ? "男" : "女"; }
}
public int Age
{
get { return _age; }
set
{
if (value >= 0 && value <= 120)
{
this._age = value;
}
}
}
public string Phone
{
get { return this._phone; }
set
{
if (reg.IsMatch(value))
{
this._phone = value;
}
}
}
public string Email
{
get { return this._email; }
set
{
if (reg1.IsMatch(value)){
this._email = value;
}
}
}
public override string ToString()
{
return $"客户{this.CustomerId},姓名:{this.CustomerName},性别:{this.Gender},年龄:{this.Age},手机号:{this.Phone},邮件:{this.Email}";
}
}
添加客户 AddCustomer()
Add:
Console.WriteLine("请输入客户Id");
string customerId = Console.ReadLine();
Console.WriteLine("请输入客户姓名");
string customerName = Console.ReadLine();
Console.WriteLine("请输入客户性别(False:男)(True:女)");
string gender = Console.ReadLine();
Console.WriteLine("请输入客户年龄");
int age = int.Parse(Console.ReadLine());
Console.WriteLine("请输入客户手机号");
string phone = Console.ReadLine();
Console.WriteLine("请输入客户邮件");
string email = Console.ReadLine();
Customer.customers = new Customer[] {
new Customer(customerId, customerName, gender,age, phone, email)
};
Console.WriteLine("添加完成!");
Console.WriteLine("是否继续添加 【1】继续添加 【2】返回上级");
int num = int.Parse(Console.ReadLine());
if (num == 1) { goto Add; }
else if (num == 2) { return; }
查询客户 CheckCustomer()
Console.WriteLine("1.查询所有 2.按姓名查询");
int num = int.Parse(Console.ReadLine());
if (num == 1)
{
foreach (Customer customer in Customer.customers)
{
Console.WriteLine(customer.ToString());
}
}
else if (num == 2)
{
Console.WriteLine("请输入要查询的姓名");
string name = Console.ReadLine();
Customer foundCustomer = Array.Find(Customer.customers, customer => customer.CustomerName == name.Trim());
if (foundCustomer != null)
{
Console.WriteLine(foundCustomer.ToString());
return;
}
else
{
Console.WriteLine("查无此人");
}
}
修改客户 ModifyCustomer()
foreach (Customer customer in Customer.customers)
{
Console.WriteLine(customer.ToString());
}
Console.WriteLine("请选择要修改的客户ID");
string id = (Console.ReadLine()).Trim();
Customer foundCustomer1 = Array.Find(Customer.customers, customer => customer.CustomerId == id);
if (foundCustomer1 != null)
{
Console.WriteLine(foundCustomer1.ToString());
Console.WriteLine("请输入修改内容,不能修改ID");
Console.WriteLine("请输入客户姓名");
foundCustomer1.CustomerName = Console.ReadLine();
Console.WriteLine("请输入客户性别(False:男)(True:女)");
string gender = (Console.ReadLine()); // 假设用户输入的是 "True" 或 "False"
foundCustomer1.Gender = gender;
Console.WriteLine("请输入客户年龄");
foundCustomer1.Age = int.Parse(Console.ReadLine());
Console.WriteLine("请输入客户手机号");
foundCustomer1.Phone = Console.ReadLine();
Console.WriteLine("请输入客户邮件");
foundCustomer1.Email = Console.ReadLine();
Console.WriteLine("客户信息已更新:" + foundCustomer1.ToString());
return;
}
else
{
Console.WriteLine("查无此人");
return;
}
删除用户 Remove()
foreach (Customer customer in Customer.customers)
{
Console.WriteLine(customer.ToString());
}
Console.WriteLine("请选择要删除的的客户ID");
string id = (Console.ReadLine()).Trim();
int index = Array.FindIndex(Customer.customers, customer => customer.CustomerId == id);
if (index != -1)
{
Customer.customers.SetValue(null, index);
}
Console.WriteLine("客户信息已更新:");
if (Customer.customers.Length == 0)
{
Console.WriteLine("无任何客户");
return;
}
else
{
foreach (Customer customer in Customer.customers)
{
Console.WriteLine(customer?.ToString() ?? "");
return;
}
}