«

C#模拟商品入库功能

hujiato 发布于 阅读:95 编程


以下是模拟商品入库功能的 C# 程序,实现了入库界面展示、用户输入商品信息及最终输出入库单的功能:

using System;

class GoodsStorage
{
    static void Main()
    {
        // 显示初始空入库单界面,模拟未输入数据时的状态
        Console.WriteLine("===================== 商品入库单 =====================");
        Console.WriteLine("商品编号:");
        Console.WriteLine("商品名称:");
        Console.WriteLine("商品规格:");
        Console.WriteLine("商品价格:");
        Console.WriteLine("入库数量:");
        Console.WriteLine("======================================================");
        Console.WriteLine();  // 空行分隔,优化显示效果

        // 提示用户输入商品信息,引导用户操作
        Console.WriteLine("请输入以下商品信息:");

        // 接收商品编号(字符串类型,直接存储)
        Console.Write("商品编号:");
        string id = Console.ReadLine();

        // 接收商品名称(字符串类型,直接存储)
        Console.Write("商品名称:");
        string name = Console.ReadLine();

        // 接收商品规格(字符串类型,直接存储)
        Console.Write("商品规格:");
        string spec = Console.ReadLine();

        // 处理商品价格输入:确保为非负数字
        decimal price;  // 用于存储商品单价
        // 循环校验,直到输入合法
        while (true)
        {
            Console.Write("商品价格:");
            // 尝试将输入转换为decimal类型,同时判断是否非负
            if (decimal.TryParse(Console.ReadLine(), out price) && price >= 0)
            {
                break;  // 输入合法,退出循环
            }
            // 输入不合法时提示重新输入
            Console.WriteLine("价格输入有误,请重新输入(需为非负数字)");
        }

        // 处理入库数量输入:确保为正整数
        int quantity;  // 用于存储入库数量
        // 循环校验,直到输入合法
        while (true)
        {
            Console.Write("入库数量:");
            // 尝试将输入转换为int类型,同时判断是否为正数
            if (int.TryParse(Console.ReadLine(), out quantity) && quantity > 0)
            {
                break;  // 输入合法,退出循环
            }
            // 输入不合法时提示重新输入
            Console.WriteLine("数量输入有误,请重新输入(需为正整数)");
        }

        // 计算商品总金额(单价 × 数量)
        decimal total = price * quantity;

        // 输出完整的商品入库单,包含用户输入的所有信息
        Console.WriteLine("\n\n===================== 商品入库单 =====================");
        Console.WriteLine($"商品编号:{id}");
        Console.WriteLine($"商品名称:{name}");
        Console.WriteLine($"商品规格:{spec}");
        Console.WriteLine($"商品价格:{price:C}");  // 使用:C格式化为货币形式(自动添加货币符号和千分位)
        Console.WriteLine($"入库数量:{quantity}");
        Console.WriteLine($"总金额:{total:C}");    // 总金额同样以货币格式显示
        Console.WriteLine("======================================================");
        Console.WriteLine("入库完成!");  // 提示用户操作结束
    }
}

===================== 商品入库单 =====================
商品编号:
商品名称:
商品规格:
商品价格:
入库数量:
======================================================

请输入以下商品信息:
商品编号:001
商品名称:iphone13
商品规格:6+128
商品价格:5999
入库数量:99

===================== 商品入库单 =====================
商品编号:001
商品名称:iphone13
商品规格:6+128
商品价格:¥5,999.00
入库数量:99
总金额:¥593,901.00
======================================================
入库完成!

C#

文章目录