- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
班级 学号:1510400439 姓名:汪明珠
设计目的
实现超市商品信息的简单管理。
功能描述
2.1程序实现了对商品信息的录入,查询,修改,删除的功能,管理员具有增加,删除,修改客户信息的权利。管理员输入密码后可进行所有操作,客户在登录后可查看商品信息但不能执行其他操作。
2.2具体说明
a.基本思路
在磁盘中创建了两个文件分别来存放客户信息和商品信息,在程序中使用了两个结构体,用来与文件进行客户信息和商品信息进行的交换。在程序开始运行时磁盘文件中的数据被导入结构体数组中,在程序操作的过程中商品与客户信息的增加与删除都作用于结构体中的数据,执行完成后,结构体中的数据被导入磁盘文件实现了文件中数据的更新。
b.具体内容
客户信息分为客户名称和客户密码,商品信息包括商品名称和商品价格,这些信息都已数组的形式存放。增加商品性息是增加结构体数组中的元素,输入完成后,用fwrite函数将新增加的元素以一个函数块的形式加入到磁盘文件中。删除商品信息操作中以写的形式打开文件,则文件内容被清空,将结构体中的数据在不写入所要删除的元素的条件下降结构体中的数据导入文件中,此时文件又恢复了数据但没有删除的那一项。商品的修改操作是通过商品名遍历结构体中的元素,找到名称相同的然后执行更改操作,将更改的信息复制到原元素位置即可,然后再将此时的结构体数据写入到磁盘文件中。对于客户信息的操作与对商品信息的操作方法相同。
功能模块
主菜单→ EQ \o\ac(○,1)用户登录 EQ \o\ac(○,2)商品信息管理 EQ \o\ac(○,3)管理用户 EQ \o\ac(○,0)退出
↓ ↓
新增用户
删除用户
增加商品
删除商品
修改商品
查询商品
查看价格价格排行
退出
源码分析
/*读取文件时根目录设在了可移动磁盘上,
在不同的电脑上可移动磁盘的名称可能不同,如发生错误,应更改根目录名称 */
//管理员密码设为11
#includestdio.h
#includestring.h
#includestdlib.h
//创建商品信息结构体
struct commodity
{
char name1[15];
char price[10];
}date1[1000];
//创建用户信息结构体
struct client
{
char name2[15];
char key[8];
}date2[100];
int commodity(struct commodity date1[1000],int i);
int main()
{
int n,m=0,k,j=0,h,count,p=0,q=0,l,sign=0,t,z=0,i;
char clien1[15],clien2[15],key2[8],key3[8],item[15],pric[10],ex1[15],ex2[10];
FILE *fp1,*fp2;
fp1=fopen(G:\\commodity,ab+); //打开文件
fp2=fopen(G:\\client,ab+); //打开文件
rewind(fp1);
rewind(fp2);
while(!feof(fp1)) //读入文件上的商品信息
{
fread(date1[p],sizeof(struct commodity),1,fp1);
if(!feof(fp1))
{p++;}
}
fclose(fp1);
while(!feof(fp2))//读入文件上的客户信息
{
fread(date2[q],sizeof(struct client),1,fp2);
if(!feof(fp2))
{q++;}
}
fclose(fp2);
/*printf(%d %d,p,q);
for(i=0;iq;i++)
printf(%s %s,date2[i].name2,date2[
原创力文档


文档评论(0)