> 文章列表 > C#模拟实现输出进销存管理系统中的每月销售明细(实验五)

C#模拟实现输出进销存管理系统中的每月销售明细(实验五)

C#模拟实现输出进销存管理系统中的每月销售明细(实验五)

实验五:模拟实现输出进销存管理系统中的每月销售明细

任务要求:

运行程序,输入要查询的月份,如果输入的月份正确,则显示本月商品销售明细;如果输入的月份不存在,则提示“该月没有销售数据或者输入的月份有误!”信息;如果输入的月份不是数字,则显示异常信息。

 整体代码框架:

实现步骤:

第一步:创建控制台应用程序,命令为SaleManage。

第二步:定义一个Information接口,定义两个属性Code和Name分别表示商品编号和名称,定义一个ShowInfo方法,用来输出信息

第三步:定义一个Sale类,继承自Information接口,实现接口中的成员。

第四步:在Sale类中定义有两个参数的构造函数,用来为属性赋初始值;

第五步:在Sale类中定义一个ShowInfo重载方法,用来输出销售的商品信息

第六步:定义一个泛型方法CaleMoney<T>(T[] items),用来计算商品销售额。

 第七步:在Program类的Main方法中,创建Sale类型的数组,用来存储每月的商品销售明细;

 第八步:创建double类型的数组,用来存储每月的商品销售数据明细

 第九步:从键盘接受用户输入,调用Sale类中的方法,输出指定月份的商品销售明细及销售总额(自行补充2-3月份输出内容)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace SaleManage
{interface Information{string Code { get; set; }string Name { get; set; }void ShowInfo();}public class Sale: Information//继承接口,定义销售类{string code = " ";string name = " ";public string Code{get{return code;}set{code = value;}}public string Name{get{return code;}set{code = value;}}public Sale(string code,string name){code = code;Name = name;}public void ShowInfo(){ }public static void ShowInfo(Sale[] sales) {foreach (Sale s in sales)Console.WriteLine("商品编号:" + s.Code + "商品名称 " + s.Name);}public static double CaleMoney<T>(T[] items)//定义范型方法{double sum = 0;foreach(T item in items){sum += Convert.ToDouble(item);}return sum;}}class Program{static void Main(string[] args){Sale[] salesJan = { new Sale("T0001","笔记本电脑"),new Sale ("T0002","手机"),new Sale("T0003","平板电脑"),new Sale ("T0004","5G手机"),new Sale("T0005","台式电脑") };Sale[] salesFeb = { new Sale("T0006", "机箱"), new Sale("T0007", "显示器") };Sale[] salesMar = { new Sale("T0003", "平板电脑"), new Sale("T0004", "5G手机"),new Sale("T0008", "组装电脑"), new Sale("T0009", "充电宝")};double[] dbJan = { 3500, 999, 3288, 1999, 12888 };double[] dbFeb = { 1499, 1699 };double[] dbMar = { 3288, 1999, 1999.9, 49 };while(true){Console.Write("\\n请输出要查询的月份(比如1、2、3等):");try{int month= Convert.ToInt32(Console.ReadLine());switch (month){case 1:Console.WriteLine("-------   1月的商品销售明细如下:");Sale.ShowInfo(salesJan);//调用方法输出销售的商品信息//调用范型方法计算出每月的总销售额,并输出Console.WriteLine("\\n1月商品总销售额:" + Sale.CaleMoney<double>(dbJan));break;case 2:Console.WriteLine("-------   2月的商品销售明细如下:");Sale.ShowInfo(salesJan);//调用方法输出销售的商品信息//调用范型方法计算出每月的总销售额,并输出Console.WriteLine("\\n2月商品总销售额:" + Sale.CaleMoney<double>(dbFeb));break;case 3:Console.WriteLine("-------   3月的商品销售明细如下:");Sale.ShowInfo(salesJan);//调用方法输出销售的商品信息//调用范型方法计算出每月的总销售额,并输出Console.WriteLine("\\n3月商品总销售额:" + Sale.CaleMoney<double>(dbMar));break;default:Console.WriteLine("   该月每月销售数据或者输入的月份有误!");break;}}catch(Exception ex){Console.WriteLine(ex.Message);}}}}
}