设计题目及要求
设计题目和要求
1需求分析
1.1 功能需求
本系统旨在实现一个超市管理系统,主要功能包括:
菜名基本信息的管理
刷卡终端信息的管理
卡号的增加和余额设置
菜名和刷卡终端信息的修改和删除
模拟消费的过程
统计刷卡终端各个编号的消费信息
1.2 开发与运行环境需求
操作系统:Windows7及以上版本
编程语言:C语言
开发环境:任意支持C语言的操作系统
2 概要设计
2.1 系统总体结构
管理平台可分为信息初始化、信息添加、删除、查询、显示、及退出时候信息保存等模块。系统总体功能结构 所示。(要给出系统功能模块图)
系统总体功能结构框图
2.2 主要数据结构
系统中使用了以下主要数据结构:
Product 结构体:用于表示菜名信息
Terminal 结构体:用于表示刷卡终端信息
Card 结构体:用于表示卡号信息
Transaction 结构体:用于表示交易信息
typedef struct {
int id;
char name[50];
float price;
char windowType[20];
} Product;
typedef struct {
int id;
} Terminal;
typedef struct {
int cardNumber;
float balance;
} Card;
typedef struct {
int terminalId;
int cardNumber;
int productId;
int quantity;
float totalAmount;
char transactionTime[20];
} Transaction;
2.3 子模块设计
系统采用单文件,为了实现各模块功能,定义为各个函数。逐个处理。
2.4系统中自定义的函数列表
为了实现系统的各项功能,本设计中自定义相关的各个函数,
void addProduct() {
// 实现添加菜名的功能
}
void addTerminal() {
// 实现添加刷卡终端的功能
}
void addCard() {
// 实现添加卡号的功能
}
void modifyProduct() {
// 实现修改菜名的功能
}
void deleteProduct() {
// 实现删除菜名的功能
}
void modifyTerminal() {
// 实现修改刷卡终端的功能
}
void deleteTerminal() {
// 实现删除刷卡终端的功能
}
void simulateTransaction() {
// 实现模拟消费的功能
}
void printTerminalTransactions() {
// 实现打印刷卡终端消费信息的功能
}
// 主函数...
int main() {
// 在主函数中调用各个函数实现系统功能
return 0;
}
3 各模块界面实现![](https://i-blog.csdnimg.cn/blog_migrate/67c0bdd207e8a0ec2fe7276e70c02ebf.png)
![](https://i-blog.csdnimg.cn/blog_migrate/195538ec88be294829b139097507023a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/88c4feaa59b15b92fe26bc0f3014d1a4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/809c2efa7b490b4922e53b2a4eca06a7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5874e9ac4b2c72f33e5b92173e7baa56.png)
3.1 主函数
主函数是整个程序的入口点,它控制了程序的流程,并通过菜单方式调用其他各个功能函数。下面是主函数的简要介绍。
printf("\n----- 超市管理系统菜单 -----\n");
printf("1. 菜名基本信息的输入\n");
printf("2. 刷卡终端信息的输入\n");
printf("3. 卡号的增加,以及余额设置\n");
printf("4. 菜名基本信息的修改\n");
printf("5. 菜名基本信息的删除\n");
printf("6. 刷卡终端信息的修改\n");
printf("7. 刷卡终端信息的删除\n");
printf("8. 模拟消费的过程\n");
printf("9. 统计刷卡终端各个编号的消费信息\n");
printf("0. 退出\n");
printf("请选择操作: ");
scanf("%d", &choice);
主函数通过一个 do-while 循环,不断显示菜单供用户选择操作。用户输入数字选择相应的操作,然后调用对应的函数实现相应的功能。循环一直进行,直到用户选择退出操作(输入0)为止。这种菜单方式提供了一种交互式的方式来操作系统功能
3.3 保存模块
为了保存消费记录信息, 退出时会自动保存。
3.4 菜名信息添加、修改删除模块
实现了菜名信息的添加、修改和删除功能。在 addProduct 函数中,用户输入菜名的相关信息,然后将菜名添加到数组中。在 modifyProduct 函数中,用户输入要修改的菜名编号,然后输入新的菜名信息。在 deleteProduct 函数中,用户输入要删除的菜名编号,然后将该菜名从数组中删除。请根据你的实际需求和具体业务逻辑进行适当的修改。
3.4 终端信息添加、修改删除模块
刷卡终端信息的添加、修改和删除与菜名信息的实现逻辑类似。在 addTerminal 函数中,用户输入终端编号,然后将终端信息添加到数组中。在 modifyTerminal 函数中,用户输入要修改的终端编号,然后输入新的终端信息。在 deleteTerminal 函数中,用户输入要删除的终端编号,然后将该终端从数组中删除。