c语言编程每个商品有一个商品id,超市商品信息系统设计报告及程序C语言.doc

PAGE

PAGE 22

苏州科技学院

二○一三 ~二○一四学年第一学期

电子与信息工程系

课程设计报告书

课程名称: 程序设计基础实践

班 级:

学 号:

姓 名:

指导教师:

二○一三年十二月

1.题目

《超市商品信息管理系统》的设计与实现

2.功能

(1)每一条记录包括一个商品的ID、名称、价格、保质日期。

(2)信息录入功能:可以完成信息记录的追加与插入。

(3)信息排序功能:按商品ID、商品价格进行排序。

(4)信息查询功能:完成按商品ID、商品名称查找商品记录,并显示。

(5)读取功能:将保存在文件中的商品记录读取出来。

(6)修改信息功能:按商品的ID进行读取未修改前的数据,输入新信息,保存。

(7)删除功能:按商品ID删除商品信息记录,并保存。

(8)退出:退出主菜单,退出程序。

3. 系统流程图

4.设计内容

整个系统除了主函数外,另外还有13个函数,实现八大功能:录入功能(追加、插入)、显示功能、查询功能、排序功能、删除功能、保存功能、读取功能。

各个函数的详细设计说明分别如下:

4.1主函数 main()

利用无限次循环while (select!='0')和swithch()实现各函数的调用,系统根据输入的数字选项来调用相应的函数。

4.2菜单选择函数 void DisMainMenu();

这是一个无参函数,主要实现“功能选择”的界面,在这个界面里有显示系统的七大功能,根据每个功能前面的序号进行选择。等执行完每一个函数功能后,按任一键回到主界面也要通过这个函数来实现!

4.3信息录入函数 int InformationInput(GOODS goo[],int cn)

这是一个含参函数,用来执行商品信息的追加、插入。其中GOODS goo[]是结构体数组,cn是本次录入商品记录的总数。

信息录入函数的流程图如下:

信息录入函数的程序如下:

int InformationInput(GOODS goo[],int cn)

{

int number,i,m,n,a1,j,a2=0;

char a3;

printf("\n请输入本次录入的商品品种的总数: ");

scanf("%d",&number);

if(number>MAX_NUM-cn)

{

printf("您输入的人数太多,大于%d人!\n",MAX_NUM-cn);

system("pause");

return(0);

}

printf("\n****1. 信息的追加****\t****2.信息的插入****\n");

scanf("%d",&m);

if(m==1)

{

for(i=cn;i

{

printf("\t商品ID :\t");

scanf("%d",&goo[i].ID);

printf("\t商品名称 :\t");

fflush(stdin);

scanf("%s",goo[i].name);

for(j=0;j

{

if(goo[j].ID==goo[i].ID || strcmp(goo[j].name,goo[i].name)==0)

{

printf("\n警告:您输入的商品ID或商品名称与已有的数据文件相同,是否继续 Y / N ?");

fflush(stdin);

scanf("%c",&a3);

if(a3=='Y'||a3=='y')

break;

else

return(0);

}

else

continue;

}

printf("\t商品单价 :\t");

scanf("%f",&goo[i].price);

printf("\t商品保质日期 :\t");

scanf("%d%d%d",&goo[i].guarant.year,&goo[i].guarant.month,&goo[i].guarant.day);

printf("\n");

}

printf("\n本次输入的信息是 :\n");

DisplayInformation2(goo,cn,cn+number);

printf("\n");

return(numb

设计一个商品销售管理程序。该程序应该具有以下功能: (1)录入、修改、删除某商品信息; (2)显示所有商品信息; (3)按商品编号由小到大的顺序显示商品信息; (4)按商品销售数量从大到小的顺序显示商品信息; (5)按商品名称、商品编号、供货商等信息进行查询,若查询信息不存在,输出没找到的信息; (6)商品的销售; (7)统计缺货商品(可设定一个边界范围,如数量小于5,以便及时订货),并产生订货信息; (8)商品销售统计。 题目要求: (1)按照分析、设计、编码、调试和测试的软件开发过程完成这个应用程序,即在程序中加入异常处理,检查用户输入数据的有效性,以保证程序的健壮性; (2)商品信息应该包括商品编号、名称、规格、进货数量、销售数量、价格、供货商名称等; (3)为各项操作功能设计一个菜单,应用程序运行后,先显示这个菜单,然后用户通过菜单选项选则所需进行的操作项目,菜单要界面友好、清晰; (4)将所有商品信息存储在一个文件中,并实现文件的读写操作,即将输入的数据以文件的形式存盘,将原来已经存盘的文件读入内存,进行管理; (5)应保证测试用例测试程序的各种边缘情况。 输入要求: 应用程序运行后,在屏幕上显示一个菜单。用户可以根据需要,选定相应的操作项目。进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。 输出要求: (1)应用程序运行后,在屏幕上显示一个菜单。 (2)要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值