今天非常開心,因?yàn)榻裉旖K于要給大家分享一個(gè)庫存管理項(xiàng)目了.
我個(gè)人感覺在做項(xiàng)目之前一定先要把邏輯思路理清,不要拿到項(xiàng)目就噼里啪啦的一直敲下去這樣是一不好的習(xí)慣,等你做大項(xiàng)目的時(shí)候,你就不會(huì)去養(yǎng)成一種做前理清邏輯思路的習(xí)慣,在接下來的項(xiàng)目中考慮的太復(fù)雜化.所以做前理清邏輯思路是個(gè)好習(xí)慣..
接下來我們先來分析一下這個(gè)庫存難管理系統(tǒng)
既然是庫存管理顯然就有一個(gè)貨品類(Goods)管理類(Adm)
貨品類中包括了(貨品名稱;貨品位置;貨品價(jià)格;貨品評(píng)價(jià))
倉庫類包括了一些方法
初始化貨品信息Input()
輸出貨品清單列表output()
歡迎菜單Welcom()
根據(jù)商品名稱獲取商品位置GetHome()
獲得滿意度最高的商品GetSatisfactionHeightGoods()
輸出滿意度最高的貨品outputSatisfactionHeightGoods()
最后在程序的入口類中調(diào)用其方法
下面就要詳細(xì)的敘述一下這個(gè)類;方法;以及Main方法中的調(diào)用代碼了.
首先在項(xiàng)目中添加一個(gè)貨品類Goods
public class Adm { Goods[] goods = new Goods[3];//實(shí)例化一個(gè)對(duì)象數(shù)組
初始化貨品的信息方法
public void Input() { Goods goods1 = new Goods();//實(shí)例化一個(gè)goods1對(duì)象 goods1.Name = "倚天劍"; goods1.Home = "峨眉山"; goods1.Satisfy = 99; goods1.Money = 9.9; goods[0] = goods1; //將對(duì)象每一項(xiàng)值賦給對(duì)象數(shù)組 Goods goods2 = new Goods();//實(shí)例化一個(gè)goods2對(duì)象 goods2.Name = "屠龍刀"; goods2.Home = "暫不知下落"; goods2.Satisfy = 99.9; goods2.Money = 90.9; goods[1] = goods2; //將對(duì)象每一項(xiàng)值賦給對(duì)象數(shù)組 Goods goods3 = new Goods();//實(shí)例化一個(gè)goods3對(duì)象 goods3.Name = "孔雀翎"; goods3.Home = "xx地方"; goods3.Satisfy = 100; goods3.Money = 90; goods[2] = goods3;//將對(duì)象每一項(xiàng)值賦給對(duì)象數(shù)組 }
輸出貨品清單列表
public void output()
{ Console.WriteLine("庫存貨品清單列表"); Console.WriteLine("======================"); foreach (Goods item in goods)//用foreach循環(huán)遍歷數(shù)組) { if(item!=null)//如果當(dāng)前數(shù)組中的值不為null { Console.WriteLine("貨品名稱:/t{0}",item.Name);//向屏幕打印貨品名稱 } } Console.WriteLine("======================"); }
歡迎菜單
根據(jù)商品名稱獲取商品位置
public void Welcom() { Console.WriteLine("======================歡迎使用庫存管理系統(tǒng)======================="); Console.WriteLine("1:根據(jù)貨品名稱獲取貨品位置2:取得客戶滿意最高的貨品3:退出"); Console.WriteLine("======================歡迎使用庫存管理系統(tǒng)======================="); Console.WriteLine("請(qǐng)選擇:"); int choice = int.Parse(Console.ReadLine());//向屏幕輸入內(nèi)容本身是一個(gè)string類型,這用到int.Parse轉(zhuǎn)化為int類型 switch(choice)//根據(jù)輸入的數(shù)組選擇對(duì)應(yīng)的功能 { case 1: GetHome(); break; case 2: outputSatisfactionHeightGoods(GetSatisfactionHeightGoods());
break; case 3: Console.WriteLine("退出成功!"); break; default: Console.WriteLine("對(duì)不起!沒有對(duì)應(yīng)的模塊"); break; } }
public void GetHome() { Console.WriteLine("請(qǐng)輸入要查詢的貨品名稱:"); string name=Console.ReadLine(); foreach (Goods item in goods) { if (item != null)//如果當(dāng)前數(shù)組中的值不為null { if(name.Equals(item.Name))//如果輸入的名字和數(shù)組中的名字匹配,就輸出對(duì)應(yīng)的貨品位置 { Console.WriteLine(item.Home);//輸出貨品位置 Welcom(); break; } } } }
獲得滿意度最高的商品
public Goods GetSatisfactionHeightGoods() { //用冒泡排序算法把滿意度從大到小排列 for (int i = 0; i < goods.Length - 1; i++) { for (int j = 0; j < goods.Length - 1 - i; j++) { if (goods[i].Satisfy < goods[i + 1].Satisfy)//如果數(shù)組中的第一項(xiàng)滿意度小于數(shù)組中的第二項(xiàng)的滿意度那么就進(jìn)行交換 { //交換過程 Goods a = goods[i]; goods[i] = goods[i + 1]; goods[i + 1] = a; } } } return goods[0];//返回?cái)?shù)組下標(biāo)為0的那一項(xiàng)這里保存的就是最大的數(shù)組中滿意度最大那一項(xiàng) }
輸出滿意度最高的貨品
public void outputSatisfactionHeightGoods(Goods happy) { Console.WriteLine("客戶滿意最高的商品:{0};擺放在:{1};滿意度:{2};價(jià)格:{3}", happy.Name, happy.Home, happy.Satisfy, happy.Money);//輸出信息 }
到這這個(gè)庫存系統(tǒng)也基本快做好了
最后在程序的入口類(即Main方法中)調(diào)用一下
static void Main(string[] args) { Adm adm = new Adm();//實(shí)例化一個(gè)倉庫類對(duì)象 adm.Input();//保證前三項(xiàng)有值 adm.Inputshow();//調(diào)用輸出貨品信息的方法 adm.Welcom();//調(diào)用歡迎菜單的方法 Console.ReadLine(); }
到這一個(gè)簡(jiǎn)單的庫存管理系統(tǒng)就Ok了
謝謝你們抽出寶貴的時(shí)間來看, 希望看完后對(duì)你有幫助.
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注