C语言程序课程设计报告-餐饮结账管理系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序课程设计报告-餐饮结账管理系统设计C语言程序设计
课程设计报告
设计题目:餐饮结账管理系统设计
1 设计任务
1.1 设计题目的描述
功能:餐饮结账信息包括:编号、时间、台面号、顾客数量、接待服务生、实收金额。试设计一餐饮结账管理系统,使之能提供以下功能:
1结账信息录入、修改、删除功能;
2查询浏览功能:按台面号查询、按接待服务生查询;
3 按照实收金额排序。
4统计总收入、顾客总数等功能。
1.2 设计要求
(1)仔细审题,明确题目要求。
(2)按照结构化的程序设计思想,将程序模块化,将相对独立的功能写成函数。
(3)要求编程、调试通过并演示;程序编写规范,添加适当注释。
(4)按照课程设计报告的内容和格式要求,撰写课程设计报告,并且打印。 2 设计方案说明
2.1 数据的存储结构
餐饮结账信息包括:编号、时间、台面号、顾客数量、接待服务生、实收金额。因此需要使用结构体,而结账信息又不止是一个,所以使用结构体数组,这里定义结构体struct bill,定义数组bill[M]。
struct bill
{
int num; //编号
int time[4]; //时间
int table; //台面号
int count; //顾客数量
1
char name[20]; //服务生姓名
int money; //实收金额
}bill[M]; number
income 2.2函数之间的调用关系说明
sort
search2 main
search menu
deleter
Input modify
modify_a save display Display_all readFromFile 2.3函数说明
1)函数 void menu()
void menu() 菜单函数
此函数为主菜单,从此处进入其他模块。
变量 c :使用c选择进入其它功能。
2
C=1,
是否
C=2,
执行是否
Input
执行C=…………
Modify
2)函数void input()
void input() 信息录入,将录入的信息存入文件bill中此函数将从键盘输入的信息录入文件bill中。使用scanf输入结构体中各个量;
打开文件bill成功
选择输入的信息个数N
输入第i个信息
直到i>=N
保存并关闭文件
3)函数 void readFromFile() void readFromFile() 从文件中读取信息并存入数组bill[30]
此函数将文件bill中信息读出并存入bill[]
打开文件
读第i个文件
直到i>=N
关闭文件
3
4)函数 void save()
void save() /*保存函数*/
此函数用于在修改与删除后保存数据。
打开文件
写入第i个文件
直到i>=N
关闭文件
5)函数 void display_all() void display_all() 信息全部显示
通过此函数可显示所有输入信息。
readFromFile()读取文件中信息
printf显示第i个信息
直到i<=N
6)函数 void display(int i) void display(int i) 单个信息显示 i为要修改的信息号从modify函数中读入
此函数用于在修改等功能后显示第i个信息,用于核对。
用printf显示第i个信息的所有数据
7)函数 int modify_a(int i) int modify_a(int i) 修改主函数时调用此函数
此函数用于修改其中一个或多个信息,并返回一个数值用于确定是否修改。
变量c用于确定修改项目
4
从键盘输入一个C的值
c>7||c<1
是否
错误 w1==2
重试 c=1
是否
输入新信息c=…………
显示修改后第i个信息
输入w1的值
返回值w1
8) 函数 void modify()
void modify() 修改信息主函数
此函数用于修改其中一个信息并保存
从文件bill中读入数据
w0==1
k==-1
输入n的值
循环判断bill[i].num-n==0,
是否
k=i k=-1
输出无记录
w1=modify_a(k);
w1=1,
是否
保存输入w0值结束
5
9)函数 void deleter() void deleter() 删除记录此函数用于删除记录中的一条信息。
从文件bill中读入信息
w1==1
k==-1
输入n
循环判断n-bill[i].num==0,
是否
k=i k=-1
无记录
display(i)
输入w0 w0=1,
是否
bill[i]=bill[i+1]; save(); 结束
输入w1值 10)函数 void search1() void search1() 台面号查询此函数用于按台面号查询信息并输出信息。
从文件bill中读入信息
w0==1
输入number
循环判断number==bill[i].table,
是否
j=i j=-1
display(j) 无此号
输入w0的值
6
11)函数 void search2() void search2() 接待服务生查询
此函数用于按接待服务生姓名查询信息并显示。