今天非常开心,因为今天终于要给大家分享一个库存管理项目了.

我个人感觉在做项目之前一定先要把逻辑思路理清,不要拿到项目就噼里啪啦的一直敲下去这样是一不好的习惯,等你做大项目的时候,你就不会去养成一种做前理清逻辑思路的习惯,在接下来的项目中考虑的太复杂化.所以做前理清逻辑思路是个好习惯..

接下来我们先来分析一下这个库存难管理系统

既然是库存管理显然就有一个货品类(Goods)管理类(Adm)

货品类中包括了(货品名称;货品位置;货品价格;货品评价)

仓库类包括了一些方法

初始化货品信息Input()

输出货品清单列表output()

欢迎菜单Welcom()

根据商品名称获取商品位置GetHome()

获得满意度最高的商品GetSatisfactionHeightGoods()

输出满意度最高的货品outputSatisfactionHeightGoods()

最后在程序的入口类中调用其方法

下面就要详细的叙述一下这个类;方法;以及Main方法中的调用代码了.

首先在项目中添加一个货品类Goods

 public class Adm

    {

        Goods[] goods = ];//实例化一个对象数组

初始化货品的信息方法

 public void Input()

        {

            Goods goods1 = new Goods();//实例化一个goods1对象

            goods1.Name = "倚天剑";

            goods1.Home = "峨眉山";

            goods1.Satisfy = ;

            goods1.Money = 9.9;

            goods[] = goods1; //将对象每一项值赋给对象数组

            Goods goods2 = new Goods();//实例化一个goods2对象

            goods2.Name = "屠龙刀";

            goods2.Home = "暂不知下落";

            goods2.Satisfy = 99.9;

            goods2.Money = 90.9;

           goods[] = goods2; //将对象每一项值赋给对象数组

            Goods goods3 = new Goods();//实例化一个goods3对象

            goods3.Name = "孔雀翎";

            goods3.Home = "xx地方";

            goods3.Satisfy = ;

            goods3.Money = ;

            goods[] = goods3;//将对象每一项值赋给对象数组

        }

输出货品清单列表

 public void output()        {

            Console.WriteLine("库存货品清单列表");

             Console.WriteLine("======================");

            foreach (Goods item in goods)//用foreach循环遍历数组)

            {

                if(item!=null)//如果当前数组中的值不为null

                {

                    Console.WriteLine("货品名称:\t{0}",item.Name);//向屏幕打印货品名称

                }

            }

            Console.WriteLine("======================");

        }

欢迎菜单

根据商品名称获取商品位置

 public void Welcom()
        {
            Console.WriteLine("======================欢迎使用库存管理系统=======================");
            Console.WriteLine("1:根据货品名称获取货品位置2:取得客户满意最高的货品3:退出");
            Console.WriteLine("======================欢迎使用库存管理系统=======================");
            Console.WriteLine("请选择:");
            int choice = int.Parse(Console.ReadLine());//向屏幕输入内容本身是一个string类型,这用到int.Parse转化为int类型
            switch(choice)//根据输入的数组选择对应的功能
            {

                :
                    GetHome();
                    break;
                :
                    outputSatisfactionHeightGoods(GetSatisfactionHeightGoods());

                    break;
                :
                    Console.WriteLine("退出成功!");
                    break;
                default:
                    Console.WriteLine("对不起!没有对应的模块");
                    break;

            }
        }
 public void GetHome()

        {

            Console.WriteLine("请输入要查询的货品名称:");

            string name=Console.ReadLine();

            foreach (Goods item in goods)

            {

                if (item != null)//如果当前数组中的值不为null

                {

                if(name.Equals(item.Name))//如果输入的名字和数组中的名字匹配,就输出对应的货品位置

                {

                    Console.WriteLine(item.Home);//输出货品位置

                    Welcom();

                    break;

                }

                }

            }

        }

获得满意度最高的商品

 public Goods GetSatisfactionHeightGoods()
        {

            //用冒泡排序算法把满意度从大到小排列

            ; i < goods.Length - ; i++)

            {

                ; j < goods.Length -  - i; j++)

                {

                    ].Satisfy)//如果数组中的第一项满意度小于数组中的第二项的满意度那么就进行交换

                        {

                        //交换过程

                            Goods a = goods[i];

                            goods[i] = goods[i + ];

                            goods[i + ] = a;

                        }

                }

            }

            ];//返回数组下标为0的那一项这里保存的就是最大的数组中满意度最大那一项

        }

输出满意度最高的货品

  public void outputSatisfactionHeightGoods(Goods happy)

        {

            Console.WriteLine("客户满意最高的商品:{0};摆放在:{1};满意度:{2};价格:{3}", happy.Name, happy.Home, happy.Satisfy, happy.Money);//输出信息

        }

到这这个库存系统也基本快做好了

最后在程序的入口类(即Main方法中)调用一下

static void Main(string[] args)

        {

            Adm adm = new Adm();//实例化一个仓库类对象

            adm.Input();//保证前三项有值

            adm.Inputshow();//调用输出货品信息的方法

            adm.Welcom();//调用欢迎菜单的方法

            Console.ReadLine();

        }

到这一个简单的库存管理系统就Ok了

谢谢你们抽出宝贵的时间来看, 希望看完后对你有帮助.

我们为之奋斗过的C#之---简单的库存管理系统的更多相关文章

  1. 基于ThinkPHP框架的简单的后台管理系统

    版权声明:本文为博主原创文章,未经博主允许不得转载. 基于ThinkPHP框架的简单的后台管理系统 一个简单的后台管理系统,可能还不全面,可以自己改,有登录功能 实例如图:    

  2. Spring Boot简单应用——会员管理系统

    简介 本项目是使用Spring Boot编写的一个简单的会员管理系统. 提供了会员的解决方案,主要有会员模块,管理员模块,礼品模块,商品模块,会员等级模块,生日提醒模块,积分模块,详细模块如下图 准备 ...

  3. Java之从头开始编写简单课程信息管理系统

    编写简单的课程管理系统对于新手并不友好,想要出色的完成并不容易以下是我的一些经验和方法 详情可参考以下链接: https://www.cnblogs.com/dream0-0/p/10090828.h ...

  4. 实现超级简单的bug管理系统

    大家可以试着去实现一个超级简单的bug管理系统 不需要鉴权,也就是不需要登陆 有tag管理功能,缺陷上可以加tag,通过tag区分bug的状态和类型 bug的增删改查功能 bug描述支持markdow ...

  5. PureMVC和Unity3D的UGUI制作一个简单的员工管理系统实例

    前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西 ...

  6. 基于node+koa2+mongodb实现简单的导航管理系统

    基于node+koa2+mongodb实现简单的导航管理系统 项目说明 本项目gitbub地址 https://github.com/xuess/nav-admin,喜欢请star 基于node 实现 ...

  7. ABP教程(四)- 开始一个简单的任务管理系统 - 实现UI端的增删改查

    接上一篇:ABP教程(三)- 开始一个简单的任务管理系统 – 后端编码 1.实现UI端的增删改查 1.1添加增删改查代码 打开SimpleTaskSystem.sln解决方案,添加一个“包含视图的MV ...

  8. php+js实现一个简单的用户管理系统

    php + js 实现一个简单的用户管理系统 说实话,我对PHP是抵触的,但是我们的WEB课程刚好学的就是这个,不得已看了看,下面是用PHP实现的一个简单的用户管理系统. 我们首先来看一下目录结构 a ...

  9. java简单学生成绩管理系统

    题目要求: 一. 数据结构要求:(5 分) 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishi ...

随机推荐

  1. segmentfault.com mongo出识以及对数组的操作

    https://segmentfault.com/a/1190000003951602 首先推荐个工具,no-sql-manager-for-mongodb-professional,虽然收费,但是每 ...

  2. mysql锁

    锁是计算机协调多个进程或线程并发访问某一资源的机制.在数据库中,除传统的计算资源(如CPU.RAM.I/O等)的争用以外,数据也是一种供许多用户共享的资源.如何保证数据并发访问的一致性.有效性是所有数 ...

  3. Spring MVC学习笔记——JSR303介绍及最佳实践

    JSR 303 – Bean Validation 是一个数据验证的规范,2009 年 11 月确定最终方案.2009 年 12 月 Java EE 6 发布,Bean Validation 作为一个 ...

  4. 使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【八】——Web Api的安全性

    系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 这一篇文章我们主要来探讨一下Web Api的安全性,到目前为止所有的请求都是走的Http协议 ...

  5. pulltorefresh滚动到底部

    如果用ListView,让它滚动到顶部,一般是这样写的: if (!listView.isStackFromBottom()) { listView.setStackFromBottom(true); ...

  6. assert()函数用法总结

    assert()函数用法总结 assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include <assert.h> ...

  7. STL vector用法介绍

    STL vector用法介绍 介绍 这篇文章的目的是为了介绍std::vector,如何恰当地使用它们的成员函数等操作.本文中还讨论了条件函数和函数指针在迭代算法中使用,如在remove_if()和f ...

  8. swiper超出部分出现滚动条

    html代码 <div class="wrap swiper-container"> <div class="swiper-wrapper"& ...

  9. Android中怎么用this

    在JAVA程序中似乎经常见到“this”,自己也偶尔用到它,但是到底“this”该怎么用,却心中无数!很多人一提起它,就说“当前对象”,可到底什么是当前对象,是什么当前对象,他自己也不清楚.现在让大家 ...

  10. sqlserver检测死锁;杀死锁和进程;查看锁信息

    http://blog.sina.com.cn/s/blog_9dcdd2020101nf4v.html sqlserver检测死锁;杀死锁和进程;查看锁信息 ( ::)转载▼ 标签: sql 检测死 ...