c语言超市管理系统课程设计.doc
《c语言超市管理系统课程设计.doc》由会员分享,可在线阅读,更多相关《c语言超市管理系统课程设计.doc(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课 程 设 计课程设计名称: 高级语言程序设计 专 业 班 级 : 计算机科学与技术0802班 学 生 姓 名 : 李旭 学 号 : 200848140202 指 导 教 师 : 范艳峰 课程设计时间: 2009年7月2号 计算机科学与技术 专业课程设计任务书学生姓名李旭专业班级计科0802学号200848140202题 目超市管理系统课题性质其它课题来源自拟课题指导教师范艳峰同组姓名无主要内容用C程序设计中的链表作数据结构,结合C语言基本知识。编写一个超市管理系统。以把所学数据结构知识应用到实际软件开发中去。本系统应完成一下几方面的功能:1)新购物品入库Tianjia();2) 物品信息删除
2、Shanchu();3)物品信息修改Xiugai();4物品信息查询Chazhao();5)物品信息浏览Liulan();5)系统颜色设置yanseshezhi(); 6)应用程序退出Jieshu();任务要求1) 每条信息至包含 :编号(id)物品名称(name)物品产地(produce)物品数量(number)物品单价(prize)2) 作为一个完整的系统,应具有友好的界面和较强的容错能3) 上机能正常运行,并写出课程设计报告参考文献C程序设计(第三版)审查意见指导教师签字:教研室主任签字: 年 月 日 1 需求分析: 随着现代生活质量的提高,超市这种便利的服务开始走进我们的生活,同时随着
3、超市涌入我们的生活,如何更便利的对超市进行系统和有序的操作,成为了我们需要考虑的问题,本程序运用C语言程序设计了一个超市管理系统。关系系统的的功能主要有新购物品入库、物品信息删除、物品信息修改、物品信息查询、物品信息浏览功能,在相应的硬盘上面进行存盘以防止部分数据的丢失。为了更加人性化使用此管理系统,还在MENU选项总添加了系统颜色设置功能,使用户可以根据自己的喜好修改操作界面。2 概要设计(1)数据结构 依据给定的物品信息和数据形式,数组必须用结构体实现。结构类型的层次结构: struct imaint id;char name20;char produce30;int number;flo
4、at price;(2)模块划分 依据程序的结构反和功能,遵照“自顶而下”的原则,描述该程序的层次结构图一显示了该程序的层次结构,共 5层:如下图: Main函数程序主菜单1 新购物品入库2 物品信息删除3 物品信息修改4 物品信息浏览5 系统颜色设置1 红底黑字2 白底黑字3 黑底红字4 绿底蓝字5 黄底紫字6 系统默认4 物品信息查询4 应用程序退出判断所输编号是否存在是:此编号已被使用,请重新输入否: 输入物品信息图一 图一的层次结构(3)原函数清单:1、 创建函数 void chushihua() 2、 增加物品函数 Tianjia(); 3、删除物品信息函数Shanchu();4、修
5、改物品信息函数 Xiugai(); 5、查询物品信息函数Chazhao();6、浏览物品信息函数Liulan(); 7、系统颜色设置函数 yanseshezhi();8、应用程序退出函数 Jieshu();3 运行环境:Win2003, WinXP, Win2000, NT, WinME, Win9X4 开发工具和编程语言:编程语言:C语言开发工具:microsoft visual C+ 6.05 详细设计:1、结构体变量的定义:struct imaint id;char name20;char produce30;int number;float price;3、 文件的初始化:void c
6、hushihua()FILE *fp;struct ima i=1,花生牛奶,湖北武汉,1200,2.5;fp=fopen(ima.dat,w);if(fp=NULL)printf(ttt系统错误,请重试.);exit(0);fwrite(&i,sizeof(struct ima),1,fp);fclose(fp);4、 欢迎菜单(主函数): void main()printf(nn);system(color 1a);printf(t3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3n);printf(t3 3n
7、);printf(t3 3n);printf(t3 欢迎使用 3n);printf(t3 3n);printf(t3 3n);printf(t3 超市库存管理系统 3n);printf(t3 按任意键继续 3n);printf(t3 3n);printf(t3 3n);printf(t3 3n);printf(t3 3n);printf(t3 3n);printf(t3 3n);printf(t3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3);getch();system(cls);menu();chushih
8、ua();menu();5、 选择菜单 void menu()int choice;printf(n【超市库存管理系统】n);printf(-系统菜单显示如下-);printf(nt=【 新购物品入库 】n);printf(nt=【 物品信息删除 】n);printf(nt=【 物品信息修改 】n);printf(nt=【 物品信息查询 】n);printf(nt=【 物品信息浏览 】n);printf(nt=【 系统颜色设置 】n);printf(nt=【 应用程序退出 】n);printf(nt请输入您要选择的菜单.);scanf(%d,&choice);switch(choice)cas
9、e 1:Tianjia();break;case 2:Shanchu();break;case 3:Xiugai();break;case 4:Chazhao();break;case 5:Liulan();break;case 6:yanseshezhi();break;case 7:Jieshu();break;default:printf(nttttt输入无效,请您重新输入.);getch();system(cls);menu();6、 新购物品入库函数: int panduanID(int id) /*判断所输编号是否已存在*/ FILE *fp;struct ima i;fp=fop
10、en(ima.date,r);if(fp=NULL)printf(ttt系统错误,请您重试.);exit(0);fread(&i,sizeof(struct ima),1,fp);while(!feof(fp)if(i.id=id)fclose(fp);return 1;break;fread(&i,sizeof(struct ima),1,fp);fclose(fp);return 0;void Tianjia() struct ima i;char choice;FILE *fp;fp=fopen(ima.date,ab);if(fp=NULL)printf(ttt系统错误,请您重试.);
11、exit(0); labID:printf(nt请您输入要入库物品的信息.n);printf(tttt 物品的编号:);scanf(%d,&i.id);if(panduanID(i.id)=1)printf(tttt此编号已被使用,请您重新输入.);goto labID;printf(tttt 物品的名称:);scanf(%s,i.name);printf(tttt 物品的生产地:);scanf(%s,i.produce);printf(tttt 物品的数量:);scanf(%d,&i.number);printf(tttt 物品的单价:);scanf(%f,&i.price);fwrite(
12、&i,sizeof(struct ima),1,fp);fclose(fp);printf(tttttt 物品信息已入库成功!n);printf(n您想继续吗?(y/n);scanf( %c,&choice);if(choice=Y|choice=y)Tianjia();elsesystem(cls);menu();7、 物品信息删除函数: void Shanchu() struct ima i1000;struct ima temp;int delID;char choice;int index=0;int j=0;FILE *fp;fp=fopen(ima.date,r);if(fp=NU
13、LL)printf(ttt系统错误,请您重试.);exit(0);fread(&temp,sizeof(struct ima),1,fp);while(!feof(fp)iindex=temp;index+;fread(&temp,sizeof(struct ima),1,fp);fclose(fp);printf(nt请输入要删除的物品的编号:);scanf(%d,&delID);fopen(f:ima.date,w);if(fp=NULL)printf(ttt系统错误,请您重试.);exit(0);for( j=0;jindex;j+)if(ij.id!=delID)fwrite(&ij,
14、sizeof(struct ima),1,fp); fclose(fp);printf(ttttt物品信息已清除!n);printf(n您想继续吗?(y/n);scanf( %c,&choice);if(choice=Y|choice=y)Shanchu();elsesystem(cls);menu();8、 物品信息修改函数: void Xiugai() int index=0; int ID,j; char choice; struct ima i1000; structima temp;FILE *fp;fp=fopen(ima.dat,r);if(fp=NULL)printf(ttt系
15、统错误,请您重试.);exit(0);fread(&temp,sizeof(struct ima),1,fp);while(!feof(fp)iindex=temp;index+;fread(&temp,sizeof(struct ima),1,fp);fclose(fp);fp=fopen(ima.dat,w);if(fp=NULL)printf(ttt系统错误,请您重试.);exit(0);printf(nt请输入要修改的信息的物品的编号:);scanf(%d,&ID);for(j=0;j=index-1;j+)if(ij.id!=ID)fwrite(&ij,sizeof(struct i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 超市 管理 系统 课程设计
限制150内