C语言课程设计(论文)—商场商品管理信息系统.doc
《C语言课程设计(论文)—商场商品管理信息系统.doc》由会员分享,可在线阅读,更多相关《C语言课程设计(论文)—商场商品管理信息系统.doc(42页珍藏版)》请在三一办公上搜索。
1、目 录1 系统分析11.1 课程设计内容11.2 系统功能需求分析11.3 数据结构设计22 系统设计22.1 总体设计22.2 详细设计22.2.1 界面设计22.2.2 各功能模块的设计23 系统编码设计23.1 main函数23.2 load函数23.3 creat创建链表函数23.4 search函数23.5 add数23.6 amend函数23.7 del函数23.8 purchase函数23.9 sales函数23.10 print函数23.11 save函数23.12 menu函数24 系统运行25 总结21 系统分析1.1 课程设计内容设计一商场商品信息管理系统,功能包括:1.
2、 文件操作:可建立、打开、保存、关闭数据文件。2. 输入商品信息数据:数据包括商品编号、商品名、商品类别、商品数量、 商品价格等。3. 编辑数据:可添加、删除、修改数据。4. 输入进货、销售信息:输入商品编号、数量完成进货或销售操作。5. 计算:应在输入进货及销售信息时,自动更改商品数量。6. 查询:可按商品编号、商品名或类别查询;还可查询需进货的商品。7. 排序:可按编号、名称或类型排序。8. 浏览:可浏览输入、查询或排序后的数据。1.2 系统功能需求分析本系统应具有以下功能:1、文件操作功能:可建立、打开、保存、关闭数据文件。2、数据输入功能: 数据包括商品编号、商品名、商品类别、商品数量
3、、 商品价格等。以及输入商品编号、数量完成进货或销售操作。3、数据添加、修改、删除功能4、计算功能:在输入进货及销售信息时,自动更改商品数量。5、查询功能:可按商品编号、商品名或类别查询;还可查询需进货的商品。6、排序功能:可按编号、名称或类型排序。7、数据显示功能:可浏览输入、查询或排序后的数据。1.3 数据结构设计struct shangpingxinxi /*结构体,用于存放主要数据*/long number; /*商品编号*/ char name100; /*商品名*/ char leibie100; /*商品类别*/ int kucun; /*库存量*/ float jiage; /
4、*商品价格*/ struct shangpingxinxi *next; /*指向下一个结构体的指针*/int n,k; /*全局变量*/struct shangpingxinxi *head; /*局部变量*/struct shangpingxinxi *p1,*p2,*p3; /*局部变量*/char temp20; /*局部变量*/int/long/char/float a,b,c,d,e,f,i,j; /*局部变量*/ FILE *fp; /*局部变量,用于指向文件*/2 系统设计2.1 总体设计按系统分析的功能要求将系统划分为以下几个主要功能模块:2.2 详细设计2.2.1 界面设计
5、1、菜单设计2、输入界面的设计 输入商品编号:提示输入7位商品编号。编号应为首位不为0的数字编号,当输入字符和非7位数字时提示错误;添加商品时,还应检查是否有重复编号,如有重新输入。 输入商品名称: 提示输入商品名称。可输入任意字符串,但为了对齐最好不超过八个字符,以回车为输入结束。 输入商品类型:提示输入商品类型。可输入任意字符串,但为了对齐最好不超过八个字符,以回车为输入结束。 输入商品库存:提示输入大于零的商品库存(大于0)。可输入032767的任意数字,当输入为字符和小于0的数字时提示错误,重新输入。 输入商品价格:提示输入大于零的商品价格(大于0)。可输入03.41038的任意浮点数
6、,当输入为字符和小于0的数字时提示错误,重新输入。3、信息显示界面的设计u 菜单信息显示:在页面中央以阶梯状加半框形式显示,页面底部显示提示信息。u 商品信息显示:应显示商品编号、商品名称、商品类别、库存数量、商品价格五种信息,并以表格形式显示。2.2.2 各功能模块的设计根据划分的功能模块,定义以下函数实现各功能:(这部分应介绍各函数的原型,各功能模块实现所用的算法,可用流程图描述)1、主函数main()定义变量进入欢迎界面输入密码Y 密码正确? N进入主菜单返回重新输入密码k=1 读取文件k=2 创建信息k=3 查询信息k=4 修改信息k=5 删除信息k=6 添加信息k=7 进货信息k=8
7、 销售信息k=9 浏览信息k=10 保存文件switch(k)返回主菜单退出程序2、读取文件函数struct shangpingxinxi *load(struct shangpingxinxi *head)定义变量输入所要打开的文件路径及文件名 Y 文件是否存在 N打开文件退出本函数读取文件中的目录开辟一个内存空间读取一个信息再开辟一个空间再开辟一个内存空间读取信息到内存空间if(p1-number!=0)关闭文件输出读入的信息到屏幕退出本函数3、创建链表函数(输入数据函数)struct shangpingxinxi *creat(void)定义变量开辟一个内存空间输入商品编号并判断是否有效
8、和重复输入商品名称并判断是否有效输入商品类别并判断是否有效输入商品库存并判断是否有效输入商品价格并判断是否有效开辟内存空间 判断是否输入结束退出函数4、查询函数struct shangpingxinxi *search(struct shangpingxinxi *head)定义变量Y 内存中是否有数据信息 N进入选择菜单退出此函数a=1 按商品编号查询a=2 按商品名查询a=3 按商品类别查询a=4 查询需进货商品switch(a)返回选择菜单退出此函数5、添加函数struct shangpingxinxi *add(information *head,information *newgoo
9、ds)定义变量开辟一个新内存空间输入需添加商品的编号并判断是否合法和重复输入需添加商品的名称输入需添加商品的类别输入需添加商品的库存判断是否合法输入需添加商品的价格判断是否合法Y 是否保存 N将所开辟空间链接到已有链表末尾返回重输退出此函数6、修改函数struct shangpingxinxi *amend(struct shangpingxinxi *head)定义变量Y 内存中是否有数据 N输入需修改的商品编号并查询是否存在退出此函数输入修改后的商品编号并判断是否合法和重复输入修改后的商品名称输入修改后的商品类别输入修改后的商品库存并判断是否合法输入修改后的商品价格并判断是否合法显示修改后
10、的信息 Y 确认修改? N 修改成功返回重输退出此函数7、删除函数struct shangpingxinxi *del(struct shangpingxinxi *head)定义变量Y 内存中是否有数据 N输入需删除的商品编号退出此函数Y 是否存在? N显示该商品信息返回重输Y 是否删除? N删除该商品信息返回重输退出此函数8、进货函数struct shangpingxinxi *purchase(struct shangpingxinxi *head)定义变量Y 内存中是否有数据 N输入所进货商品的编号退出此函数Y 是否存在? N显示该商品信息返回重输输入进货量显示该商品信息退出此函数9、
11、销售函数struct shangpingxinxi *sales(struct shangpingxinxi *head)定义变量Y 内存中是否有数据 N输入所销售商品的编号退出此函数Y 是否存在? N显示该商品信息返回重输输入销售量Y 库存销售量? N显示该商品信息返回重输退出此函数10、排序函数(输出函数)void print(struct shangpingxinxi *head)定义变量Y 内存中是否有数据信息 N进入选择菜单退出此函数a=1 按商品编号顺序浏览a=2 按商品名顺序浏览a=3 按商品类别顺序浏览a=0 返回选择菜单switch(a)退出此函数11、保存函数void sa
12、ve(struct shangpingxinxi *p1)定义变量Y 内存中是否有数据 N输入文件地址和文件名退出此函数Y 能否打开? N打开文件退出此函数把内存中的信息保存到文件在屏幕上显示信息关闭文件退出此函数3 系统代码设计3.1 main函数#include #include #include #include #define LEN sizeof(struct shangpingxinxi)struct shangpingxinxilong number;/*7位商品编号*/ char name100;/*商品名*/ char leibie100;/*商品类别*/ int kucun
13、;/*库存量*/ float jiage;/*商品价格*/ struct shangpingxinxi *next;typedef struct shangpingxinxi information;int n,k;/*n,k为全局变量,本程序中的函数均可以使用它*/void main() /*主函数main,功能:通过调用各函数,实现商品信息管理系统的功能*/information *head=0,*newgoods=0;int k=0;char a10; int j;char ch;pp:system(cls);/*清屏*/ printf(请输入密码:);j=0;while(ch=getc
14、h()!=13) putchar(*); aj=ch; j+; aj=0; if(strcmp(a,zeus880825)!=0) printf(nn密码错误!); getch(); goto pp; system(cls);/*清屏*/lp:k=menu(k);switch(k)/*用switch语句实现功能选择*/case 1: head=load(head);break;/*从文件调入记录函数*/ case 2: head=creat();break;/*调用创建链表函数*/ case 3: head=search(head);break;/*调用信息查询函数*/ case 4: hea
15、d=amend(head);break;/*调用修改信息的函数*/ case 5: head=del(head); break;/*调用删除信息函数*/ case 6: head=add(head,newgoods);break;/*调用追加信息资料函数*/ case 7: head=purchase(head);break;/*调用输入进货信息的函数*/ case 8: head=sales(head);break;/*调用输入销售信息的函数*/ case 9: print(head); break;/*调用显示信息资料函数*/ case 10:save(head);break;/*调用保存
16、函数*/ case 0: exit(0);/*退出系统,返回主界面*/ default: printf(输入错误,请重试!n); goto lp;3.2 load函数information *load(information *head)/*函数load,功能:从文件读入商品信息*/ information *p1,*p2; char filepn10; FILE *fp; system(cls);/*清屏*/ printf(请输入文件路径及文件名:); scanf(%s,filepn);/*输入文件路径及名称*/ if(fp=fopen(filepn,r+)=NULL) printf(不能打
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 论文 商场 商品 管理信息系统
链接地址:https://www.31ppt.com/p-2385017.html