C语言实现超市计价收款系统攻略
简介
本文将介绍如何使用C语言实现一个简单的超市计价收款系统。该系统将能够记录商品信息、价格以及计算顾客的购物总价等功能。
主要步骤
以下是实现该系统的主要步骤:
- 定义结构体
定义商品信息的结构体,包括商品名、价格等信息。例如:
struct goods {
char name[20];
int price;
int num;
};
- 构建商品库存
定义一个结构体指针数组,用于存储商品信息。例如:
struct goods *goodsList[100];
- 添加商品
通过动态内存分配的方式,为新增商品分配内存空间。例如:
struct goods *newGoods = (struct goods *)malloc(sizeof(struct goods));
- 显示商品信息
遍历商品库存,输出所有商品的信息。例如:
for (int i = 0; i < goodsCount; i++) {
printf("商品名称:%s,单价:%d,库存:%d\n", goodsList[i]->name, goodsList[i]->price, goodsList[i]->num);
}
- 购物结算
循环提示顾客选择购买商品,计算购买总价。例如:
int totalPrice = 0;
while (1) {
printf("请输入商品编号(-1表示购买结束):");
int choice = 0;
scanf("%d", &choice);
if (choice == -1) {
break;
}
struct goods *curGoods = goodsList[choice];
printf("您选择了商品:%s,单价:%d\n", curGoods->name, curGoods->price);
printf("请输入购买数量:");
int buyNum = 0;
scanf("%d", &buyNum);
if (buyNum > curGoods->num) {
printf("库存不足,无法购买!\n");
continue;
}
totalPrice += buyNum * curGoods->price;
curGoods->num -= buyNum;
printf("购买成功!\n");
}
printf("总价为:%d元\n", totalPrice);
示例说明
示例1
以下是添加商品的示例代码:
struct goods *newGoods = (struct goods *)malloc(sizeof(struct goods));
printf("请输入商品名称:");
scanf("%s", newGoods->name);
printf("请输入单价:");
scanf("%d", &newGoods->price);
printf("请输入库存:");
scanf("%d", &newGoods->num);
goodsList[goodsCount] = newGoods;
goodsCount++;
示例2
以下是购物结算的示例代码:
int totalPrice = 0;
while (1) {
printf("请输入商品编号(-1表示购买结束):");
int choice = 0;
scanf("%d", &choice);
if (choice == -1) {
break;
}
struct goods *curGoods = goodsList[choice];
printf("您选择了商品:%s,单价:%d\n", curGoods->name, curGoods->price);
printf("请输入购买数量:");
int buyNum = 0;
scanf("%d", &buyNum);
if (buyNum > curGoods->num) {
printf("库存不足,无法购买!\n");
continue;
}
totalPrice += buyNum * curGoods->price;
curGoods->num -= buyNum;
printf("购买成功!\n");
}
printf("总价为:%d元\n", totalPrice);
以上是关于如何使用C语言实现超市计价收款系统的详细攻略,希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言实现超市计价收款系统 - Python技术站