制作简单进销存管理系统(C#)
实验三:制作简单进销存管理系统
任务要求:
在进销存管理系统中,商品的库存信息有很多种类,比如商品型号、商品名称、商品库存量等。在面向对象编程中,这些商品的信息可以存储到属性中,然后当需要使用这些信息时,再从对应的属性中读取出来。这里要求定义库存商品结构,并输出库存商品的信息。

整体框架参考:
第一步:初始化商品类cStockInfo,并设置以下13个变量:

第二步:设置商品属性信息。
包括以下13个商品属性信息:
- 商品编号(TradeCode)、
- 单位全称(FullName)、
- 商品型号(TradeType)、
- 商品规格(Standard)、
- 商品单位(Unit)、
- 商品产地(Produce)、
- 库存数量(Qty)、
- 进货时最后一次价格(Price)、
- 加权平均价格(AveragePrice)、
- 销售时的最后一次销价(SalePrice)、
- 盘点数量(Check)、
- 库存报警上限(UpperLimit)、
- 库存报警下限(LowerLimit)
包括以下13个商品属性信息:
- 商品编号(TradeCode)、
- 单位全称(FullName)、
- 商品型号(TradeType)、
- 商品规格(Standard)、
- 商品单位(Unit)、
- 商品产地(Produce)、
- 库存数量(Qty)、
- 进货时最后一次价格(Price)、
- 加权平均价格(AveragePrice)、
- 销售时的最后一次销价(SalePrice)、
- 盘点数量(Check)、
- 库存报警上限(UpperLimit)、
- 库存报警下限(LowerLimit)



第三步:使用ShowInfo()方法实现对商品信息的显示

第四步:输出标题和控制台输出内容

第五步:设置商品1的基本信息并显示

第六步:设置商品2的基本信息并显示

第七步:设置商品3的基本信息并显示,构造函数默认值

第八步:实现对商品属性信息的约束。(自行完成)
库存:库存从键盘输入,限定库存范围:1-1000,必须是数字
商品类型:限定输入格式:字符+“-”+数字,中间必须有-符号
第九步:实现商品库存信息的预警提示。(自行完成)
库存上限报警:库存大于900,提示接近库存上限,需要尽快减少库存。
库存下限报警:库存小于100,提示接近库存下限,需要尽快补充库存。
实现步骤:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp1
{class Program{static void Main(string[] args){Console.WriteLine("库存盘点信息如下:");//商品1信息//cStockInfo csi1 = new cStockInfoInfo();cStockInfo csi1 = new cStockInfo();csi1.TradeCode = "TJRA001";csi1.FullName = "空调";csi1.TradeType = "TYPE-1";csi1.Standard = "2匹";csi1.Unit = "台";csi1.Produce = "天津";csi1.Qty = 200;csi1.Price = 2000;csi1.AveragePrice = 2500;csi1.SalePrice = 3000;csi1.Check = 200;csi1.UpperLimit = 800;csi1.LowerLimit = 200;csi1.ShowInfo();//商品2信息//商品2信息//cStockInfo csi2 = new cStockInfoInfo();cStockInfo csi2 = new cStockInfo();csi2.TradeCode = "TJRA002";csi2.FullName = "空调";csi2.TradeType = "TYPE-2";csi2.Standard = "1.5匹";csi2.Unit = "台";csi2.Produce = "天津";csi2.Qty = 200;csi2.Price = 3000;csi2.AveragePrice = 3500;csi2.SalePrice = 4000;csi2.Check = 290;csi2.ShowInfo();//商品3信息,使用默认值// cStockInfo csi3 = new cStockInfoInfo();//商品3信息cStockInfo csi3 = new cStockInfo();csi3.TradeCode = "TJRA003";csi3.TradeType = "TYPE-3";csi3.ShowInfo();Console.ReadLine();}}public class cStockInfo{private string tradecode = "";private string fullname = "";private string tradetpye = "";private string standard = "";private string tradeunit = "";private string produce = "";private float qty = 0;private float price = 0;private float averageprice = 0;private float saleprice = 0;private float check = 0;private float upperlimit = 0;private float lowerlimit = 0;private float loverlimit = 0;//商品编号public string TradeCode{get { return tradecode; }set { tradecode = value; }}//单位全称public string FullName{get { return fullname; }set { fullname = value; }}//商品型号public string TradeType{get { return tradetpye; }set { tradetpye = value; }}//商品规格public string Standard{get { return standard; }set { standard = value; }}//商品单位public string Unit{get { return tradeunit; }set { tradeunit = value; }}//商品产地public string Produce{get { return produce; }set { produce = value; }}//库存数量public float Qty{get { return qty; }set { qty = value; }}//进货最后一次价格public float Price{get { return price; }set { price = value; }}//加权平均价格public float AveragePrice{get { return averageprice; }set { averageprice = value; }}//销售时的最后一次销价public float SalePrice{get { return saleprice; }set { saleprice = value; }}//盘点数量public float Check{get { return check; }set { check = value; }}//库存报警上限public float UpperLimit{get { return upperlimit; }set { upperlimit = value; }}//库存报警下限public float LowerLimit{get { return loverlimit; }set { loverlimit = value; }}public void ShowInfo(){Console.WriteLine("------------------------------------------------------");Console.WriteLine("显示商品信息");Console.WriteLine("");Console.Write("商品编号:{0,-15}", TradeCode);Console.Write("单位全称:{0,-15}", FullName);Console.Write("商品型号:{0,-15}", TradeType);Console.WriteLine("");Console.Write("商品规格:{0,-15}", Standard);Console.Write("商品单位:{0,-15}", Unit);Console.Write("商品产地{0,-15}", Produce);Console.Write("库存数量{0,-15}", Qty);Console.WriteLine("");Console.Write("最后一次价格:{0,-15:C}", Price);Console.Write("加权平均价格:{0,-15:C}", AveragePrice);Console.Write("最后一次销价:{0,-15:C}", SalePrice);Console.WriteLine("");Console.Write("盘点数量:{0,-15}", Check);Console.Write("库存报警上限:{0,-15}", UpperLimit);Console.Write("库存报警下限:{0,-15}", LowerLimit);Console.WriteLine("");Console.WriteLine("商品信息显示完毕");Console.WriteLine("------------------------------------------------------");Console.Title = "商品的库存信息显示";Console.WriteLine("库存盘点信息如下:");}//商品1信息}
}
相关文章:
制作简单进销存管理系统(C#)
实验三:制作简单进销存管理系统 任务要求: 在进销存管理系统中,商品的库存信息有很多种类,比如商品型号、商品名称、商品库存量等。在面向对象编程中,这些商品的信息可以存储到属性中,然后当需要使用这些…...
css总结9(过渡和2D变换)
目录 过渡 2D变换 3D变换 过渡 属性结构图 过渡补充 ### 过渡多个元素样式属性 transition:style1 duration , style2 duration,...; ### 过渡所有属性 transition: all duration; 简单示例 ### 移入时改变长度且加入过渡效果 div { width:100px; height:100px; …...
SpringBoot 结合RabbitMQ与Redis实现商品的并发下单【SpringBoot系列12】
SpringCloud 大型系列课程正在制作中,欢迎大家关注与提意见。 程序员每天的CV 与 板砖,也要知其所以然,本系列课程可以帮助初学者学习 SpringBooot 项目开发 与 SpringCloud 微服务系列项目开发 1 项目准备 SpringBoot 整合 RabbitMQ 消息队…...
【python进阶】序列切片还能这么用?切片的强大比你了解的多太多
📚引言 🙋♂️作者简介:生鱼同学,大数据科学与技术专业硕士在读👨🎓,曾获得华为杯数学建模国家二等奖🏆,MathorCup 数学建模竞赛国家二等奖🏅,…...
[数据结构]直接插入排序、希尔排序
文章目录排序的概念和运用排序的概念排序运用常见的排序算法常见的排序算法直接插入排序希尔排序性能对比排序的概念和运用 排序的概念 排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操…...
CNN、LeNet、AlexNet、VGG、GoogLeNet、RCNN、Fast RCNN、Faster RCNN、YOLO、YOLOv2、SSD等的关系
卷积神经网络的现状1943年美国数学家提出人工智能1949年心理学家建立神经元模型1957年弗兰克提出 感知器人工神经网络模型1980年建立多层感知器模型1984日本学者提出卷积神经网络原始模型神经感知机1998年提出LeNet-5卷积神经网络,并发展了其在音符和字符上的优势20…...
IO-day1-(fscanf、fprintf.........)
作业一、有一个usr.txt的文件,其中存储着用户的账户和密码,格式如下:zhangsan aaaalisi bbbbb空格前面是账户,空格后面是密码,一行一个账户、密码要求如下:从终端获取一个账户名和密码判断是否能够登录成功…...
C++类和对象(上篇)
目录 1.类的定义 2.类的访问限定符及封装 2.1类的访问限定符 2.2封装 3.类的作用域 4.类的实例化 5.类的大小 6.this 指针 1.类的定义 class className {// 类体:由成员函数和成员变量组成}; // 一定要注意后面的分号 class为定义类的关键字,Clas…...
解决Xshell无法连接Kali Linux 2020.1(2019.3)版本
使用Xshell远程终端工具连接虚拟机的Kali Linux却提示连接不上原因:Kali Linux默认没有打开SSH远程登录,SSH就是一种网络协议,用于加密的远程登录,所以在没有打开SSH协议之前是无法使用Xshell连接Kali Linux的。解决办法ÿ…...
项目文章 | 缓解高胆固醇血症 ,浒苔多糖如何相助?
文章标题:Polysaccharides from Enteromorpha prolifera alleviate hypercholesterolemia via modulating the gut microbiota and bile acid metabolism 发表期刊:Food & Function 影响因子:6.317 作者单位:福建医科大…...
Linux使用宝塔面板搭建网站,并内网穿透实现公网访问
文章目录前言1. 环境安装2. 安装cpolar内网穿透3. 内网穿透4.固定http地址5. 配置二级子域名6.创建一个测试页面前言 宝塔面板作为简单好用的服务器运维管理面板,它支持Linux/Windows系统,我们可用它来一键配置LAMP/LNMP环境、网站、数据库、FTP等&…...
基于深度学习方法与张量方法的图像去噪相关研究
目录 1 研究现状 1.1 基于张量分解的高光谱图像去噪 1.2 基于深度学习的图像去噪算法 1.3 基于深度学习的高光谱去噪 1.4 小结 2 基于深度学习的图像去噪算法 2.1 深度神经网络基本知识 2.2 基于深度学习的图像去噪网络 2.3 稀疏编码 2.3.1 传统稀疏编码 2.3.2 群稀…...
Java基础知识之HashMap的使用
一、HashMap介绍 HashMap是Map接口的一个实现类(HashMap实现了Map的接口),它具有Map的特点。HashMap的底层是哈希表结构。 Map是用于保存具有映射关系的数据集合,它具有双列存储的特点,即一次必须添加两个元素…...
面试--每日一经
操作系统 死锁 死锁:是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。 死锁的四个必要条件 互斥条件:一个资源每次只能被一个进…...
JavaSE进阶之(十六)枚举
十六、枚举16.1 背景16.2 枚举类型16.3 EnumSet 和 EnumMap01、EnumSet02、EnumMap16.1 背景 在 Java 语言中还没有引入枚举类型之前,表示枚举类型的常用模式是声明一组 int 类型的常量,常常用的就是: public static final int SPRING 1; …...
全同态加密:TFHE
参考文献: Cheon J H, Stehl D. Fully homomophic encryption over the integers revisited[C]//Advances in Cryptology–EUROCRYPT 2015: 34th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Sofia, Bulgaria, …...
【计算机二级】综合题目
计算机二级python真题 文章目录计算机二级python真题一、《大学慕课 两问 》二、综合应用题——价值链三、基本操作题 ——信息输出一、《大学慕课 两问 》 附件中的文件data.txt 是教育部爱课程网中国大学MOOC平台的某个 HTML页面源文件,里面包含了我国参与MOOC建设的一批大学…...
初识Kafka
介绍 Kafka Kafka 是一款基于发布与订阅的消息系统。 用生产者客户端 API 向 Kafka 生产消息,用消费者客户端 API 从 Kafka 读取这些消息。 Kafka 使用 Zookeeper 保存元数据信息。 Kafka 0.9 版本之前,除了 broker 之外, 消费者也会使用…...
【JavaEE】线程的状态
哈喽,大家好~我是保护小周ღ,本期为大家带来的是 Java 多线程的 线程的状态,New 新建状态,Runnable 运行状态,Blocked 阻塞状态,waiting 等待状态,Time_Waiting 超时等待状态,Termin…...
7个最受瞩目的 Python 库,提升你的开发效率
当今时代,数据分析和处理已经成为了各行各业中不可或缺的一环。Python作为一种非常流行的编程语言,为我们提供了许多强大的工具和库来处理不同类型的数据。 在这篇文章中,我将向您介绍七个非常有用的Python库,这些库各自有着独特…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
LOOI机器人的技术实现解析:从手势识别到边缘检测
LOOI机器人作为一款创新的AI硬件产品,通过将智能手机转变为具有情感交互能力的桌面机器人,展示了前沿AI技术与传统硬件设计的完美结合。作为AI与玩具领域的专家,我将全面解析LOOI的技术实现架构,特别是其手势识别、物体识别和环境…...

