用c语言实现一个简单的超市管理系统
时间: 2024-03-14 10:46:16 浏览: 149
C语言实现的超市管理系统
好的,以下是一个简单的超市管理系统的示例代码,使用了C语言实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 商品结构体
typedef struct {
char name[20]; // 商品名称
int price; // 商品价格
int count; // 商品库存
} Commodity;
// 购物车结构体
typedef struct {
Commodity commodity; // 商品信息
int amount; // 商品数量
int total_price; // 商品总价
} Cart;
// 商品列表
Commodity commodity_list[5] = {
{"可乐", 3, 10},
{"薯片", 5, 5},
{"巧克力", 10, 3},
{"牛奶", 6, 8},
{"饼干", 4, 12}
};
// 购物车
Cart cart[5];
int cart_count = 0;
// 显示商品列表
void show_commodity_list() {
printf("商品列表:\n");
printf("名称\t价格\t库存\n");
for (int i = 0; i < 5; i++) {
printf("%s\t%d\t%d\n", commodity_list[i].name, commodity_list[i].price, commodity_list[i].count);
}
}
// 添加商品到购物车
void add_to_cart() {
show_commodity_list();
printf("请输入要购买的商品序号:");
int index;
scanf("%d", &index);
index--;
if (index < 0 || index >= 5) {
printf("输入有误,请重新选择。\n");
return;
}
if (commodity_list[index].count <= 0) {
printf("该商品库存不足,无法购买。\n");
return;
}
printf("请输入购买数量:");
int amount;
scanf("%d", &amount);
if (amount <= 0 || amount > commodity_list[index].count) {
printf("输入有误,请重新选择。\n");
return;
}
Commodity commodity = commodity_list[index];
Cart new_cart = {
commodity,
amount,
commodity.price * amount
};
cart[cart_count++] = new_cart;
commodity_list[index].count -= amount;
printf("商品已添加到购物车。\n");
}
// 显示购物车
void show_cart() {
printf("购物车:\n");
printf("名称\t价格\t数量\t总价\n");
int total_price = 0;
for (int i = 0; i < cart_count; i++) {
Cart item = cart[i];
printf("%s\t%d\t%d\t%d\n", item.commodity.name, item.commodity.price, item.amount, item.total_price);
total_price += item.total_price;
}
printf("总价:%d\n", total_price);
}
// 结算购物车
void settle_cart() {
show_cart();
printf("请输入支付金额:");
int paid_price;
scanf("%d", &paid_price);
int total_price = 0;
for (int i = 0; i < cart_count; i++) {
total_price += cart[i].total_price;
}
if (paid_price < total_price) {
printf("支付金额不足,无法完成支付。\n");
return;
}
printf("找零:%d\n", paid_price - total_price);
printf("购物车已清空。\n");
cart_count = 0;
}
int main() {
while (1) {
printf("请选择操作:\n");
printf("1. 添加商品到购物车\n");
printf("2. 显示购物车\n");
printf("3. 结算购物车\n");
printf("4. 退出\n");
int choice;
scanf("%d", &choice);
switch (choice) {
case 1:
add_to_cart();
break;
case 2:
show_cart();
break;
case 3:
settle_cart();
break;
case 4:
return 0;
default:
printf("输入有误,请重新选择。\n");
}
}
return 0;
}
```
这个简单的超市管理系统实现了添加商品到购物车、显示购物车、结算购物车等功能。用户可以通过输入数字选择要进行的操作。需要注意的是,这个示例代码中并没有实现数据库的功能,所有的数据都是保存在内存中的。在实际的超市管理系统中,需要使用数据库来保存商品信息、购物车信息和交易记录等数据。
阅读全文