制作简单进销存管理系统(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库,这些库各自有着独特…...
YOLOv11分割模型实战:用C++和ONNXRuntime解析‘output0’和‘output1’双输出,实现像素级颜色分析
YOLOv11分割模型实战:C与ONNXRuntime双输出解析与像素级颜色分析 在计算机视觉领域,目标检测与实例分割技术的结合正成为工业应用的新标准。YOLOv11作为YOLO系列的最新成员,不仅延续了其高效检测的特性,更通过双输出结构实现了精准…...
当3D高斯遇上AIGC:手把手拆解G4SPLAT如何用视频扩散模型修复未观测区域
当3D高斯遇上AIGC:G4SPLAT如何用生成式AI重塑三维重建 在计算机视觉领域,三维场景重建一直是个令人着迷又充满挑战的问题。想象一下,你手持手机在房间里随意拍摄几段视频,AI就能自动生成这个房间的完整三维模型——包括那些你根本…...
Stable Diffusion像素艺术工作站:Pixel Fashion Atelier支持LoRA在线热切换
Stable Diffusion像素艺术工作站:Pixel Fashion Atelier支持LoRA在线热切换 1. 像素时装锻造坊简介 Pixel Fashion Atelier是一款基于Stable Diffusion与Anything-v5的图像生成工作站,专为像素艺术创作而设计。与传统AI工具不同,它采用了复…...
Qwen3-14B-Int4-AWQ助力运维智能化:日志分析与故障排查实战
Qwen3-14B-Int4-AWQ助力运维智能化:日志分析与故障排查实战 1. 运维工程师的日常痛点 凌晨三点,你的手机突然响起。系统告警显示某核心服务出现异常,你需要立即登录服务器查看日志。面对几十GB的日志文件,你不得不用grep、awk等…...
3个AI脚本让Illustrator设计效率提升300%:从重复劳动到创意爆发
3个AI脚本让Illustrator设计效率提升300%:从重复劳动到创意爆发 【免费下载链接】illustrator-scripts Adobe Illustrator scripts 项目地址: https://gitcode.com/gh_mirrors/il/illustrator-scripts 作为设计师,你是否每天花费40%以上时间在重复…...
别再只会用PS修图了!用Python的Richardson-Lucy算法,5分钟搞定模糊老照片修复
用Python拯救模糊老照片:零基础也能上手的Richardson-Lucy算法实战 翻箱倒柜找到一张泛黄的老照片,却发现画面模糊得连人脸都看不清?别急着叹气,更不用花大价钱找专业修图师。今天我要分享一个连Python新手都能轻松上手的黑科技—…...
PySceneDetect终极指南:5分钟掌握智能视频场景检测与分割
PySceneDetect终极指南:5分钟掌握智能视频场景检测与分割 【免费下载链接】PySceneDetect :movie_camera: Python and OpenCV-based scene cut/transition detection program & library. 项目地址: https://gitcode.com/gh_mirrors/py/PySceneDetect PyS…...
手把手教你用SteamCMD在Windows服务器上搭建Rust腐蚀私服(附详细参数配置)
手把手教你用SteamCMD在Windows服务器上搭建Rust腐蚀私服(附详细参数配置) 在生存游戏领域,Rust以其硬核的PVP机制和高度自由的沙盒玩法,持续吸引着大量玩家。对于想要掌控游戏规则、打造专属社区的管理员来说,自建服…...
Taskbar-Lyrics:Windows 11任务栏歌词嵌入终极指南
Taskbar-Lyrics:Windows 11任务栏歌词嵌入终极指南 【免费下载链接】Taskbar-Lyrics BetterNCM插件,在任务栏上嵌入歌词,目前仅建议Windows 11 项目地址: https://gitcode.com/gh_mirrors/ta/Taskbar-Lyrics 在Windows 11上享受沉浸式…...
深度学习模型压缩:从原理到实践
深度学习模型压缩:从原理到实践 1. 背景与动机 深度学习模型在各种任务上取得了显著的性能提升,但随之而来的是模型规模的不断增长。大型模型虽然性能优异,但也带来了以下问题: 存储需求大:大型模型需要大量存储空间&a…...

