帮我写一个C语言代码,商品的录入

时间: 2023-03-23 17:01:04 浏览: 23
好的,这是一个用C语言实现的商品录入代码: ``` #include <stdio.h> #include <string.h> struct Product { char name[100]; int quantity; float price; }; int main() { struct Product product; printf("请输入商品名称:"); scanf("%s", product.name); printf("请输入商品数量:"); scanf("%d", &product.quantity); printf("请输入商品价格:"); scanf("%f", &product.price); printf("商品名称:%s\n", product.name); printf("商品数量:%d\n", product.quantity); printf("商品价格:%.2f\n", product.price); return 0; } ``` 这段代码定义了一个名为`Product`的结构体,其中包含了商品的名称、数量和价格。在`main`函数中,通过`scanf`函数读入用户输入的商品信息,最后使用`printf`函数输出商品信息。
相关问题

用c语言写一个物流管理系统

好的,物流管理系统一般包含以下功能: 1. 商品信息管理:包括商品名称、价格、库存等信息的录入、修改、查询和删除。 2. 订单管理:包括订单的录入、修改、查询和删除,以及订单状态的更新等功能。 3. 物流配送管理:包括配送员信息的录入、修改、查询和删除,以及订单的分配和配送状态的更新等功能。 4. 用户信息管理:包括用户的注册、登录、信息修改和查询等功能。 5. 数据统计和分析:包括商品销售量、订单数量、用户活跃度等数据的统计和分析。 下面是一个简单的物流管理系统的代码,供参考: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> // 商品结构体 typedef struct { int id; // 商品编号 char name[20]; // 商品名称 float price; // 商品价格 int stock; // 商品库存 } Product; // 订单结构体 typedef struct { int id; // 订单编号 int pid; // 商品编号 int uid; // 用户编号 int status; // 订单状态,0表示未发货,1表示已发货 } Order; // 用户结构体 typedef struct { int id; // 用户编号 char name[20]; // 用户名称 char password[20]; // 用户密码 } User; // 配送员结构体 typedef struct { int id; // 配送员编号 char name[20]; // 配送员名称 } Deliveryman; // 商品列表 Product products[100]; int num_products = 0; // 订单列表 Order orders[100]; int num_orders = 0; // 用户列表 User users[100]; int num_users = 0; // 配送员列表 Deliveryman deliverymen[100]; int num_deliverymen = 0; // 显示菜单 void show_menu() { printf("1. 商品管理\n"); printf("2. 订单管理\n"); printf("3. 物流配送管理\n"); printf("4. 用户管理\n"); printf("5. 数据统计和分析\n"); printf("0. 退出\n"); } // 商品管理 void product_management() { int choice; do { printf("商品管理\n"); printf("1. 商品录入\n"); printf("2. 商品修改\n"); printf("3. 商品查询\n"); printf("4. 商品删除\n"); printf("0. 返回\n"); printf("请选择:"); scanf("%d", &choice); switch (choice) { case 1: // 商品录入 printf("请输入商品信息:\n"); printf("商品名称:"); scanf("%s", products[num_products].name); printf("商品价格:"); scanf("%f", &products[num_products].price); printf("商品库存:"); scanf("%d", &products[num_products].stock); products[num_products].id = num_products + 1; num_products++; printf("商品录入成功!\n"); break; case 2: // 商品修改 printf("请输入要修改的商品编号:"); int id; scanf("%d", &id); int i; for (i = 0; i < num_products; i++) { if (products[i].id == id) { printf("商品名称:%s\n", products[i].name); printf("商品价格:%f\n", products[i].price); printf("商品库存:%d\n", products[i].stock); printf("请输入新的商品信息:\n"); printf("商品名称:"); scanf("%s", products[i].name); printf("商品价格:"); scanf("%f", &products[i].price); printf("商品库存:"); scanf("%d", &products[i].stock); printf("商品修改成功!\n"); break; } } if (i == num_products) { printf("商品不存在!\n"); } break; case 3: // 商品查询 printf("请输入要查询的商品名称:"); char name[20]; scanf("%s", name); for (i = 0; i < num_products; i++) { if (strcmp(products[i].name, name) == 0) { printf("商品编号:%d\n", products[i].id); printf("商品价格:%f\n", products[i].price); printf("商品库存:%d\n", products[i].stock); break; } } if (i == num_products) { printf("商品不存在!\n"); } break; case 4: // 商品删除 printf("请输入要删除的商品编号:"); scanf("%d", &id); for (i = 0; i < num_products; i++) { if (products[i].id == id) { int j; for (j = i; j < num_products - 1; j++) { products[j] = products[j + 1]; } num_products--; printf("商品删除成功!\n"); break; } } if (i == num_products) { printf("商品不存在!\n"); } break; case 0: // 返回 break; default: printf("输入有误,请重新输入!\n"); break; } } while (choice != 0); } // 订单管理 void order_management() { int choice; do { printf("订单管理\n"); printf("1. 订单录入\n"); printf("2. 订单修改\n"); printf("3. 订单查询\n"); printf("4. 订单删除\n"); printf("0. 返回\n"); printf("请选择:"); scanf("%d", &choice); switch (choice) { case 1: // 订单录入 printf("请输入订单信息:\n"); printf("商品编号:"); int pid; scanf("%d", &pid); printf("用户编号:"); int uid; scanf("%d", &uid); orders[num_orders].id = num_orders + 1; orders[num_orders].pid = pid; orders[num_orders].uid = uid; orders[num_orders].status = 0; num_orders++; printf("订单录入成功!\n"); break; case 2: // 订单修改 printf("请输入要修改的订单编号:"); int id; scanf("%d", &id); int i; for (i = 0; i < num_orders; i++) { if (orders[i].id == id) { printf("订单商品编号:%d\n", orders[i].pid); printf("订单用户编号:%d\n", orders[i].uid); printf("订单状态:%d\n", orders[i].status); printf("请输入新的订单信息:\n"); printf("商品编号:"); scanf("%d", &orders[i].pid); printf("用户编号:"); scanf("%d", &orders[i].uid); printf("订单状态:"); scanf("%d", &orders[i].status); printf("订单修改成功!\n"); break; } } if (i == num_orders) { printf("订单不存在!\n"); } break; case 3: // 订单查询 printf("请输入要查询的订单编号:"); scanf("%d", &id); for (i = 0; i < num_orders; i++) { if (orders[i].id == id) { printf("订单商品编号:%d\n", orders[i].pid); printf("订单用户编号:%d\n", orders[i].uid); printf("订单状态:%d\n", orders[i].status); break; } } if (i == num_orders) { printf("订单不存在!\n"); } break; case 4: // 订单删除 printf("请输入要删除的订单编号:"); scanf("%d", &id); for (i = 0; i < num_orders; i++) { if (orders[i].id == id) { int j; for (j = i; j < num_orders - 1; j++) { orders[j] = orders[j + 1]; } num_orders--; printf("订单删除成功!\n"); break; } } if (i == num_orders) { printf("订单不存在!\n"); } break; case 0: // 返回 break; default: printf("输入有误,请重新输入!\n"); break; } } while (choice != 0); } // 物流配送管理 void delivery_management() { int choice; do { printf("物流配送管理\n"); printf("1. 配送员录入\n"); printf("2. 订单分配\n"); printf("3. 订单配送更新\n"); printf("0. 返回\n"); printf("请选择:"); scanf("%d", &choice); switch (choice) { case 1: // 配送员录入 printf("请输入配送员名称:"); scanf("%s", deliverymen[num_deliverymen].name); deliverymen[num_deliverymen].id = num_deliverymen + 1; num_deliverymen++; printf("配送员录入成功!\n"); break; case 2: // 订单分配 printf("请输入要分配的订单编号:"); int id; scanf("%d", &id); int i; for (i = 0; i < num_orders; i++) { if (orders[i].id == id) { printf("请选择配送员:\n"); int j; for (j = 0; j < num_deliverymen; j++) { printf("%d. %s\n", deliverymen[j].id, deliverymen[j].name); } int did; scanf("%d", &did); orders[i].status = 1; printf("订单分配成功!\n"); break; } } if (i == num_orders) { printf("订单不存在!\n"); } break; case 3: // 订单配送更新 printf("请输入要更新的订单编号:"); scanf("%d", &id); for (i = 0; i < num_orders; i++) { if (orders[i].id == id) { if (orders[i].status == 0) { printf("订单未分配配送员!\n"); } else { printf("订单配送员编号:%d\n", orders[i].uid); printf("请输入新的配送员编号:"); int did; scanf("%d", &did); orders[i].uid = did; printf("订单配送更新成功!\n"); } break; } } if (i == num_orders) { printf("订单不存在!\n"); } break; case 0: // 返回 break; default: printf("输入有误,请重新输入!\n"); break; } } while (choice != 0); } // 用户管理 void user_management() { int choice; do { printf("用户管理\n"); printf("1. 用户注册\n"); printf("2. 用户登录\n"); printf("3. 用户信息修改\n"); printf("4. 用户信息查询\n"); printf("0. 返回\n"); printf("请选择:"); scanf("%d", &choice); switch (choice) { case 1: // 用户注册 printf("请输入用户名:"); scanf("%s", users[num_users].name); printf("请输入密码:"); scanf("%s", users[num_users].password); users[num_users].id = num_users + 1; num_users++; printf("用户注册成功!\n"); break; case 2: // 用户登录 printf("请输入用户名:"); char name[20]; scanf("%s", name); printf("请输入密码:"); char password[20]; scanf("%s", password); int i; for (i = 0; i < num_users; i++) { if (strcmp(users[i].name, name) == 0 && strcmp(users[i].password, password) == 0) { printf("用户登录成功!\n"); break; } } if (i == num_users) { printf("用户名或密码错误!\n"); } break; case 3: // 用户信息修改 printf("请输入要修改的用户编号:"); int id; scanf("%d", &id); int i; for (i = 0; i < num_users; i++) { if (users[i].id == id) { printf("用户名称:%s\n", users[i].name); printf("用户密码:%s\n", users[i].password); printf("请输入新的用户信息:\n"); printf("用户名称:"); scanf("%s", users[i].name); printf("用户密码:"); scanf("%s", users[i].password); printf("用户信息修改成功!\n"); break; } } if (i == num_users) { printf("用户不存在!\n"); } break; case 4: // 用户信息查询 printf("请输入要查询的用户名称:"); char name2[20]; scanf("%s", name2); for (i = 0; i < num_users; i++) { if (strcmp(users[i].name, name2) == 0) { printf("用户编号:%d\n", users[i].id); printf("用户密码:%s\n", users[i].password); break; } } if (i == num_users) { printf("用户不存在!\n"); } break; case 0: // 返回 break; default: printf("输入有误,请重新输入!\n"); break; } } while (choice != 0); } // 数据统计和分析 void data_analysis() { printf("商品数量:%d\n", num_products); printf("订单数量:%d\n", num_orders); printf("用户数量:%d\n", num_users); } int main() { int choice; do { show_menu(); printf("请选择:"); scanf("%d", &choice); switch (choice) { case 1: // 商品管理 product_management(); break; case 2: // 订单管理 order_management(); break; case 3: // 物流配送管理 delivery_management(); break; case 4: // 用户管理 user_management(); break; case 5: // 数据统计和分析 data_analysis(); break; case 0: // 退出 printf("谢谢使用!\n"); break; default: printf("输入有误,请重新输入!\n"); break; } } while (choice != 0); return 0; } ``` 这个代码只是一个简单的示例,可以根据实际需求进行修改和完善。

c语言我的服装管理系统代码

我的服装管理系统代码是用C语言编写的,主要包括了各种功能模块,比如用户管理、商品管理、库存管理和销售管理等。 在用户管理模块中,我编写了实现用户注册、登录和权限管理的代码,确保只有经过身份验证的用户才能访问系统的其他功能模块。 在商品管理模块中,我编写了实现商品信息录入、删除、修改和查询的代码,以及实现商品分类和标签功能的代码,方便用户对商品进行管理和检索。 在库存管理模块中,我编写了实现入库和出库操作的代码,以及实现库存查询和报警功能的代码,确保库存信息的实时更新和监控。 在销售管理模块中,我编写了实现销售记录的录入和查询的代码,以及实现销售统计和报表生成的代码,帮助用户了解销售情况和做出相应的决策。 除了这些主要功能模块,我还编写了一些辅助功能的代码,比如数据备份和恢复功能的代码,以及日志记录和异常处理的代码,确保系统的稳定和安全运行。 通过这些代码的编写,我成功实现了一个完整的服装管理系统,为用户提供了方便快捷的服装信息管理和销售服务。

相关推荐

最新推荐

recommend-type

安装NumPy教程-详细版

附件是安装NumPy教程_详细版,文件绿色安全,请大家放心下载,仅供交流学习使用,无任何商业目的!
recommend-type

语音端点检测及其在Matlab中的实现.zip

语音端点检测及其在Matlab中的实现.zip
recommend-type

C#文档打印程序Demo

使用C#完成一般文档的打印,带有页眉,页脚文档打印,表格打印,打印预览等
recommend-type

DirectX修复工具-4-194985.zip

directx修复工具 DirectX修复工具(DirectX repair)是系统DirectX组件修复工具,DirectX修复工具主要是用于检测当前系统的DirectX状态,若发现异常情况就可以马上进行修复,非常快捷,使用效果也非常好。
recommend-type

Python手动实现人脸识别算法

人脸识别的主要算法 其核心算法是 欧式距离算法使用该算法计算两张脸的面部特征差异,一般在0.6 以下都可以被认为是同一张脸 人脸识别的主要步骤 1 获得人脸图片 2 将人脸图片转为128D的矩阵(这个也就是人脸特征的一种数字化表现) 3 保存人脸128D的特征到文件中 4 获取其他人脸转为128D特征通过欧式距离算法与我们保存的特征对比,如果差距在0.6以下就说明两张脸差距比较小
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

可见光定位LED及其供电硬件具体型号,广角镜头和探测器,实验设计具体流程步骤,

1. 可见光定位LED型号:一般可使用5mm或3mm的普通白色LED,也可以选择专门用于定位的LED,例如OSRAM公司的SFH 4715AS或Vishay公司的VLMU3500-385-120。 2. 供电硬件型号:可以使用常见的直流电源供电,也可以选择专门的LED驱动器,例如Meanwell公司的ELG-75-C或ELG-150-C系列。 3. 广角镜头和探测器型号:一般可采用广角透镜和CMOS摄像头或光电二极管探测器,例如Omron公司的B5W-LA或Murata公司的IRS-B210ST01。 4. 实验设计流程步骤: 1)确定实验目的和研究对象,例如车辆或机器人的定位和导航。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。