C#商品管理系統(tǒng)簡(jiǎn)易版
本文實(shí)例為大家分享了C#實(shí)現(xiàn)簡(jiǎn)易商品管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
在這里,寫了一個(gè)巨簡(jiǎn)單的商品管理系統(tǒng),只有一個(gè)添加和查看,只是為了給自己練手的!
商品id 名字 數(shù)量 價(jià)格
1001 蘋果 100 1
1002 樂事薯片 20 2
簡(jiǎn)易版商品管理系統(tǒng):
* 提示:最多不超過5種商品(水果,廚具,餅干等等)
* 輸入1,進(jìn)行添加商品的操作;
* 通過鍵盤輸入每種商品的信息,并進(jìn)行存儲(chǔ);
* 輸入2,進(jìn)入查詢商品的操作(顯示商品的基本信息);
這是這個(gè)項(xiàng)目實(shí)現(xiàn)的功能,下面就是代碼實(shí)現(xiàn)部分。
第一部分為,定義一個(gè)Goods類,給id,名字價(jià)格數(shù)量,進(jìn)行構(gòu)造
private int G_id;
? ? ? ? private string G_name;
? ? ? ? private int G_num;
? ? ? ? private float G_Price;
? ? ? ? //構(gòu)造
? ? ? ? public Goods(int g_id, string g_name, int g_num, float g_Price)
? ? ? ? {
? ? ? ? ? ? G_id = g_id;
? ? ? ? ? ? G_name = g_name;
? ? ? ? ? ? G_num = g_num;
? ? ? ? ? ? G_Price = g_Price;
? ? ? ? }
?
? ? ? ? public int ID { get => G_id; set => G_id = value; }
? ? ? ? public string Name { get => G_name; set => G_name = value; }
? ? ? ? public int Num { get => G_num;
? ? ? ? ? ? set {//判斷輸入的值是否大于0,小于零,參數(shù)就直接定義為0
? ? ? ? ? ? ? ? if (value < 0)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? G_num = 0;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else G_num = value;
? ? ? ? ? ? } }
? ? ? ? public float Price { get => G_Price; set
? ? ? ? ? ? {
? ? ? ? ? ? ? ? if (value < 0)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? G_Price = 0;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else G_Price = value;
? ? ? ? ? ? } }
? ? ? ? public override string ToString()
? ? ? ? {
? ? ? ? ? ? return $"{ID}\t{Name}\t{Num}\t{Price}";//ToString方法的改寫,從而得到4個(gè)參數(shù)
? ? ? ? }這一部分就是,代碼的主要實(shí)現(xiàn)部分,因?yàn)橐婚_始想用二維數(shù)組,然后試了一下,發(fā)現(xiàn)不可行,就改用了List的方法,發(fā)現(xiàn)這種非常簡(jiǎn)單,簡(jiǎn)易這樣使用。
public static List<Goods> GoodsList = new List<Goods>();
?
? ? ? ? public static void Login()//初始界面
? ? ? ? {
? ? ? ? ? ? Console.WriteLine("輸入1,進(jìn)行添加商品的操作");
? ? ? ? ? ? Console.WriteLine("輸入2,進(jìn)入查詢商品的操作(顯示商品的基本信息)");
? ? ? ? ? ? P_Login();//調(diào)用P_login中的對(duì)1,2的判定
? ? ? ? }
? ? ? ? public static void P_Login()
? ? ? ? {
? ? ? ? ? ?
? ? ? ? ? ? int n = Convert.ToInt32(Console.ReadLine());
? ? ? ? ? ? switch (n)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? case 1:
? ? ? ? ? ? ? ? ? ? AddLogin();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 2:
? ? ? ? ? ? ? ? ? ? Show();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? default:
? ? ? ? ? ? ? ? ? ? Console.WriteLine("你的輸入錯(cuò)誤");
? ? ? ? ? ? ? ? ? ? Login();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
?
? ? ? ? }
? ? ? ? public static void AddLogin()
? ? ? ? {
? ? ? ? ??
? ? ? ? ? ? //輸入一定的商品后,調(diào)用查詢中的Show
? ? ? ? ? ? //這里是用二維數(shù)組寫入,和輸出它,并不能存儲(chǔ),一定的數(shù)據(jù)
? ? ? ? ? ? Console.WriteLine("總商品數(shù):");
? ? ? ? ? ? int num = Convert.ToInt32(Console.ReadLine());
? ? ? ? ? ? if (num == 0)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Console.WriteLine("你的輸入為0,故返回初始界面");
? ? ? ? ? ? ? ? Login();
? ? ? ? ? ? }
? ? ? ? ? ? else if (num <= 5 && num > 0)//不能大于5
? ? ? ? ? ? {
? ? ? ? ? ? ? ? //通過商品總數(shù)簡(jiǎn)歷一個(gè)二維數(shù)組
? ? ? ? ? ? ? ? //因?yàn)?,定義的二維數(shù)組是string類型的所有會(huì)有BUG在
? ? ? ? ? ? ? ? //儲(chǔ)存不了
? ? ? ? ? ? ? ? //string[,] good = new string[num, 4];//數(shù)組為四項(xiàng)分別為ID,名字,數(shù)量,價(jià)格
? ? ? ? ? ? ? ? //for (int i = 0; i < num; i++)//建立一個(gè)表格
? ? ? ? ? ? ? ? //{
? ? ? ? ? ? ? ? // ? ?Console.Write("請(qǐng)輸入ID:", i + 1);
? ? ? ? ? ? ? ? // ? ?good[i, 0] = Convert.ToString(Console.ReadLine());
? ? ? ? ? ? ? ? // ? ?Console.Write("請(qǐng)輸入名字:");
? ? ? ? ? ? ? ? // ? ?good[i, 1] = Convert.ToString(Console.ReadLine());
? ? ? ? ? ? ? ? // ? ?Console.Write("請(qǐng)輸入數(shù)量:");
? ? ? ? ? ? ? ? // ? ?good[i, 2] = Convert.ToString(Console.ReadLine());
? ? ? ? ? ? ? ? // ? ?Console.Write("請(qǐng)輸入價(jià)格:");
? ? ? ? ? ? ? ? // ? ?good[i, 3] = Convert.ToString(Console.ReadLine());
?
? ? ? ? ? ? ? ? //}
? ? ? ? ? ? ? ? int a = 0,c=0;
? ? ? ? ? ? ? ? string b = "";
? ? ? ? ? ? ? ? float d = 0;
? ? ? ? ? ? ? ? for (int i = 0; i < num; i++)//建立一個(gè)表格
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? //對(duì)輸入的數(shù)據(jù)不能判斷,只會(huì)退出程序
? ? ? ? ? ? ? ? ? ? Console.Write("請(qǐng)輸入ID:", i + 1);
? ? ? ? ? ? ? ? ? ? a = Convert.ToInt32(Console.ReadLine());
? ? ? ? ? ? ? ? ? ? Console.Write("請(qǐng)輸入名字:");
? ? ? ? ? ? ? ? ? ? b = Convert.ToString(Console.ReadLine());
? ? ? ? ? ? ? ? ? ? Console.Write("請(qǐng)輸入數(shù)量:");
? ? ? ? ? ? ? ? ? ? c = Convert.ToInt32(Console.ReadLine());
? ? ? ? ? ? ? ? ? ? Console.Write("請(qǐng)輸入價(jià)格:");
? ? ? ? ? ? ? ? ? ? d = float.Parse(Console.ReadLine());
? ? ? ? ? ? ? ? ? ? GoodsList.Add(new Goods(a, b, c, d));
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? if (a >= 0 && c >= 0 && d >= 0)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? Console.WriteLine("按任意鍵查看商品列表");
? ? ? ? ? ? ? ? ? ? Show();//調(diào)用展示的
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? Console.WriteLine("輸入有誤,請(qǐng)重新輸入");
? ? ? ? ? ? ? ? ? ? AddLogin();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? //for (int i = 0; i < good.GetLength(0); i++)
? ? ? ? ? ? ? ? //{
? ? ? ? ? ? ? ? // ??
? ? ? ? ? ? ? ? // ? ?for (int j = 0; j < good.GetLength(1); j++)
? ? ? ? ? ? ? ? // ? ?{
? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? // ? ? ? ?Console.Write(good[i, j] + "\t");//使其對(duì)齊,輸出學(xué)生成績(jī)
? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? // ? ?}
? ? ? ? ? ? ? ? //}
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Console.WriteLine("按任意鍵返回初始界面,按0退出程序,按1重新輸入");
? ? ? ? ? ? ? ? string e = Convert.ToString(Console.ReadLine());
? ? ? ? ? ? ? ? if (e != "0" && e != "1")
? ? ? ? ? ? ? ? { ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? Login();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else if(e == "1")
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? P_Login();//重新開始
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? Environment.Exit(0);//強(qiáng)制退出
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ??
? ? ? ? ? ? }
? ? ? ? ? ?
? ? ? ? }
? ? ? ? public static void Show()
? ? ? ? {
? ? ? ? ? ? Console.WriteLine();
? ? ? ? ? ? Console.WriteLine(" 簡(jiǎn)易版商品管理系統(tǒng)");
? ? ? ? ? ? Console.WriteLine("--------------------------");
? ? ? ? ? ? Console.WriteLine("ID\t名字\t數(shù)量\t價(jià)格\t");
? ? ? ? ? ? //這里用List儲(chǔ)存了一個(gè)
? ? ? ? ? ? GoodsList.Add(new Goods(12, "蘋果", 123, 675));
? ? ? ? ? ? foreach (var te in GoodsList)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Console.WriteLine(te+"\t");
? ? ? ? ? ? }
? ? ? ? ? ? Console.WriteLine("按任意鍵返回初始界面,按0退出程序");
? ? ? ? ? ? string e = Convert.ToString(Console.ReadLine());
? ? ? ? ? ? if (e != "0")
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Login();//返回初始界面
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Environment.Exit(0);
? ? ? ? ? ? }只要在main函數(shù)中調(diào)用login()就可以對(duì)項(xiàng)目就行測(cè)試,下面是測(cè)試結(jié)果:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C#導(dǎo)出數(shù)據(jù)到CSV文件的通用類實(shí)例
這篇文章主要介紹了C#導(dǎo)出數(shù)據(jù)到CSV文件的通用類,將C#操作CSV文件的常用技巧封裝進(jìn)一個(gè)通用類中以方便調(diào)用,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
C#中FileSystemWatcher類實(shí)現(xiàn)監(jiān)控文件夾
在C#中,如果你想要監(jiān)控一個(gè)文件夾內(nèi)文件的變動(dòng)情況,比如文件的創(chuàng)建、刪除、修改等,你可以使用FileSystemWatcher類,下面就來介紹一下FileSystemWatcher監(jiān)控的使用,感興趣的可以了解一下2024-03-03
C#中的并發(fā)編程與.NET任務(wù)并行庫(kù)的使用示例和常見問題
在現(xiàn)代軟件開發(fā)中,.NET Framework通過引入任務(wù)并行庫(kù)(TPL)和并發(fā)集合類型,簡(jiǎn)化了并發(fā)復(fù)雜性,提高程序的性能、可維護(hù)性和可擴(kuò)展性,并發(fā)集合設(shè)計(jì)上允許多線程安全訪問,此外,TPL通過Task類簡(jiǎn)化異步操作,正確使用這些工具可避免死鎖和競(jìng)爭(zhēng)條件等常見問題2024-09-09
c#中winform根據(jù)郵箱地址和密碼一鍵發(fā)送email的實(shí)現(xiàn)
本文主要介紹了c#winform根據(jù)郵箱地址和密碼一鍵發(fā)送email的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
用C#對(duì)ADO.NET數(shù)據(jù)庫(kù)完成簡(jiǎn)單操作的方法
用C#對(duì)ADO.NET數(shù)據(jù)庫(kù)完成簡(jiǎn)單操作的方法...2007-03-03
C#使用TimeSpan時(shí)間計(jì)算的簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要給大家介紹了關(guān)于C#使用TimeSpan時(shí)間計(jì)算的相關(guān)資料,以及通過一個(gè)實(shí)例代碼給大家介紹了C#使用timespan和timer完成一個(gè)簡(jiǎn)單的倒計(jì)時(shí)器的方法,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-06-06
C# Winform 調(diào)用系統(tǒng)接口操作 INI 配置文件的代碼
封裝了一小段代碼, 調(diào)用系統(tǒng)接口, 操作配置文件. 一般用于 .ini 文件, 或者其它鍵值對(duì)格式的配置文件2011-05-05

