店铺管理语言超市管理系统报告书C语言课程设计最全版.docx
- 文档编号:2244422
- 上传时间:2022-10-28
- 格式:DOCX
- 页数:35
- 大小:154.33KB
店铺管理语言超市管理系统报告书C语言课程设计最全版.docx
《店铺管理语言超市管理系统报告书C语言课程设计最全版.docx》由会员分享,可在线阅读,更多相关《店铺管理语言超市管理系统报告书C语言课程设计最全版.docx(35页珍藏版)》请在冰豆网上搜索。
店铺管理语言超市管理系统报告书C语言课程设计最全版
(店铺管理)语言超市管理系统报告书(C语言课程设计)
课程设计
课程设计名称:
高级语言程序设计
专业班级:
计算机科学与技术0802班
学生姓名:
李旭
学号:
200848140202
指导教师:
范艳峰
课程设计时间:
2009年7月2号
计算机科学与技术专业课程设计任务书
学生姓名
李旭
专业班级
计科0802
学号
200848140202
题目
超市管理系统
课题性质
其它
课题来源
自拟课题
指导教师
范艳峰
同组姓名
无
主要内容
用《C程序设计》中的链表作数据结构,结合C语言基本知识。
编写一个超市管理系统。
以把所学数据结构知识应用到实际软件开发中去。
本系统应完成一下几方面的功能:
1)新购物品入库——Tianjia();
2)物品信息删除———Shanchu();
3)物品信息修改———Xiugai();
4物品信息查询———Chazhao();
5)物品信息浏览——Liulan();
5)系统颜色设置———yanseshezhi();
6)应用程序退出———Jieshu();
任务要求
1)每条信息至包含:
编号(id)物品名称(name)物品产地(produce)物品数量(number)物品单价(prize)
2)作为一个完整的系统,应具有友好的界面和较强的容错能
3)上机能正常运行,并写出课程设计报告
参考文献
《C程序设计(第三版)》
审查意见
指导教师签字:
教研室主任签字:
年月日
1需求分析:
随着现代生活质量的提高,超市这种便利的服务开始走进我们的生活,同时随着超市涌入我们的生活,如何更便利的对超市进行系统和有序的操作,成为了我们需要考虑的问题,本程序运用C语言程序设计了一个超市管理系统。
关系系统的的功能主要有新购物品入库、物品信息删除、物品信息修改、物品信息查询、物品信息浏览功能,在相应的硬盘上面进行存盘以防止部分数据的丢失。
为了更加人性化使用此管理系统,还在MENU选项总添加了系统颜色设置功能,使用户可以根据自己的喜好修改操作界面。
2概要设计
(1)数据结构
依据给定的物品信息和数据形式,数组必须用结构体实现。
结构类型的层次结构:
structima
{
intid;
charname[20];
charproduce[30];
intnumber;
floatprice;
};
(2)模块划分
依据程序的结构反和功能,遵照“自顶而下”的原则,描述该程序的层次结构图一显示了该程序的层次结构,共5层:
如下图:
图一
图一的层次结构
(3)原函数清单:
1、创建函数
voidchushihua()
2、增加物品函数
Tianjia();
3、删除物品信息函数
Shanchu();
4、修改物品信息函数
Xiugai();
5、查询物品信息函数
Chazhao();
6、浏览物品信息函数
Liulan();
7、系统颜色设置函数
yanseshezhi();
8、应用程序退出函数
Jieshu();
3运行环境:
Win2003,WinXP,Win2000,NT,WinME,Win9X
4开发工具和编程语言:
编程语言:
C语言
开发工具:
microsoftvisualC++6.0
5详细设计:
1、结构体变量的定义:
structima
{
intid;
charname[20];
charproduce[30];
intnumber;
floatprice;
};
3、文件的初始化:
voidchushihua()
{
FILE*fp;
structimai={1,"花生牛奶","湖北武汉",1200,2.5};
fp=fopen("ima.dat","w");
if(fp==NULL)
{
printf("\t\t\t系统错误,请重试........");
exit(0);
}
fwrite(&i,sizeof(structima),1,fp);
fclose(fp);
}
4、欢迎菜单(主函数):
voidmain()
{
printf("\n\n");
system("color1a");
printf("\t\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\3\n");
printf("\t\3\3\n");
printf("\t\3\3\n");
printf("\t\3欢迎使用\3\n");
printf("\t\3\3\n");
printf("\t\3\3\n");
printf("\t\3超市库存管理系统\3\n");
printf("\t\3按任意键继续\3\n");
printf("\t\3\3\n");
printf("\t\3\3\n");
printf("\t\3\3\n");
printf("\t\3\3\n");
printf("\t\3\3\n");
printf("\t\3\3\n");
printf("\t\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\3");
getch();
system("cls");
menu();
chushihua();
menu();
}
5、选择菜单
voidmenu()
{
intchoice;
printf("\n∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞【超市库存管理系统】∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞\n");
printf("--------------------------------系统菜单显示如下--------------------------------");
printf("\n\t①=====================【新购物品入库】\n");
printf("\n\t②=====================【物品信息删除】\n");
printf("\n\t③=====================【物品信息修改】\n");
printf("\n\t④=====================【物品信息查询】\n");
printf("\n\t⑤=====================【物品信息浏览】\n");
printf("\n\t⑥=====================【系统颜色设置】\n");
printf("\n\t⑦=====================【应用程序退出】\n");
printf("\n\t请输入您要选择的菜单......");
scanf("%d",&choice);
switch(choice)
{
case1:
Tianjia();
break;
case2:
Shanchu();
break;
case3:
Xiugai();
break;
case4:
Chazhao();
break;
case5:
Liulan();
break;
case6:
yanseshezhi();
break;
case7:
Jieshu();
break;
default:
printf("\n\t\t\t\t\t输入无效,请您重新输入......");
getch();
system("cls");
menu();
}
}
6、新购物品入库函数:
intpanduanID(intid)/*判断所输编号是否已存在*/
{
FILE*fp;
structimai;
fp=fopen("ima.date","r");
if(fp==NULL)
{
printf("\t\t\t系统错误,请您重试........");
exit(0);
}
fread(&i,sizeof(structima),1,fp);
while(!
feof(fp))
{
if(i.id==id)
{
fclose(fp);
return1;
break;
}
fread(&i,sizeof(structima),1,fp);
}
fclose(fp);
return0;
}
voidTianjia()
{structimai;
charchoice;
FILE*fp;
fp=fopen("ima.date","ab");
if(fp==NULL)
{
printf("\t\t\t系统错误,请您重试........");
exit(0);
}
labID:
printf("\n\t请您输入要入库物品的信息...\n");
printf("\t\t\t\t物品的编号:
");
scanf("%d",&i.id);
if(panduanID(i.id)==1)
{
printf("\t\t\t\t此编号已被使用,请您重新输入......");
gotolabID;
}
printf("\t\t\t\t物品的名称:
");
scanf("%s",i.name);
printf("\t\t\t\t物品的生产地:
");
scanf("%s",i.produce);
printf("\t\t\t\t物品的数量:
");
scanf("%d",&i.number);
printf("\t\t\t\t物品的单价:
");
scanf("%f",&i.price);
fwrite(&i,sizeof(structima),1,fp);
fclose(fp);
printf("\t\t\t\t\t\t物品信息已入库成功!
!
!
\n");
printf("\n您想继续吗?
(y/n)");
scanf("%c",&choice);
if(choice=='Y'||choice=='y')
{
Tianjia();
}
else
{
system("cls");
menu();
}
}
7、物品信息删除函数:
voidShanchu()
{structimai[1000];
structimatemp;
intdelID;
charchoice;
intindex=0;
intj=0;
FILE*fp;
fp=fopen("ima.date","r");
if(fp==NULL)
{
printf("\t\t\t系统错误,请您重试........");
exit(0);
}
fread(&temp,sizeof(structima),1,fp);
while(!
feof(fp))
{
i[index]=temp;
index++;
fread(&temp,sizeof(structima),1,fp);
}
fclose(fp);
printf("\n\t请输入要删除的物品的编号:
");
scanf("%d",&delID);
fopen("f:
\\ima.date","w");
if(fp==NULL)
{
printf("\t\t\t系统错误,请您重试........");
exit(0);
}
for(j=0;j { if(i[j].id! =delID) { fwrite(&i[j],sizeof(structima),1,fp); } } fclose(fp); printf("\t\t\t\t\t物品信息已清除! ! ! \n");
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 店铺 管理 语言 超市 系统 报告书 课程设计 最全版