C语言课程设计.docx

上传人:b****6 文档编号:4687395 上传时间:2022-12-07 格式:DOCX 页数:24 大小:20.69KB
下载 相关 举报
C语言课程设计.docx_第1页
第1页 / 共24页
C语言课程设计.docx_第2页
第2页 / 共24页
C语言课程设计.docx_第3页
第3页 / 共24页
C语言课程设计.docx_第4页
第4页 / 共24页
C语言课程设计.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

C语言课程设计.docx

《C语言课程设计.docx》由会员分享,可在线阅读,更多相关《C语言课程设计.docx(24页珍藏版)》请在冰豆网上搜索。

C语言课程设计.docx

C语言课程设计

#includestdio.h

#includestdlib.h

#includeconio.h

#includestring.h

#includemath.h

#defineLENsizeof(structshangpin)大小测试

#defineLEN1sizeof(structguke)

#defineNULL0

structshangpin商品结构体

{intJG,xcl;

charHMJXH[20],pinpai[20],baoxouqi[20];

structshangpinnext;

};

structguke顾客结构体

{

intzhenghao;

charmingzi[20],SHriqi[20],zHMJXH[20];

structgukenext;

};

voidmainmenu()显示主菜单

{system(cls);

printf(t家t电t自t助t服t务t系t统n);

printf();

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf(tttt1.管理及查询入口nn);

printf(tttt2.订单及退订系统nn);

printf(tttt3.退出系统nn);

printf(ttt请按键选择,回车确定n);

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf();

system(color3F);

return;

}

voidmenu1()显示管理及查询菜单

{system(cls);

printf();

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf(tttt1.商品信息输入nn);

printf(tttt2.清除库存nn);

printf(tttt3.商品查询nn);

printf(tttt4.库存一览nn);

printf(tttt5.返回上一层nn);

printf(ttt请按键选择,回车确定n);

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf();

system(color3F);

return;

}

voidmenu2()显示查询菜单

{system(cls);

printf();

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf(tttt1.价格查询nn);

printf(tttt2.货名及型号查询nn);

printf(tttt3.品牌查询nn);

printf(tttt4.保修期查询nn);

printf(ttt请按键选择,回车确定n);

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf();

system(color3F);

return;

}

voidmima1()

{

FILEfp;

chars1[10],s2[10];

if((fp=fopen(F家电自助服务系统密码.txt,r+))==NULL)

printf(获取密码失败。

n);

else

{

fgets(s1,10,fp);

do

{

printf(请输入密码n);

gets(s2);

}while(strcmp(s1,s2)!

=0);

printf(密码正确!

);

}

fclose(fp);

}

main()主函数,调用main1

{voidmain1();

main1();}

voidmain1()main1函数

{voidgljcxrk();声明管理及查询函数

voidDDJTD();声明订单及退订函数

charchoose;

mainmenu();

scanf(%c,&choose);

switch(choose)功能函数选择

{case'1'gljcxrk();break;

case'2'DDJTD();break;

case'3'system(cls);printf(nnnnnnnnntttByebye...);printf(nnnnnnnnnttt欢迎使用本软件!

);getch();exit(0);system(cls);system(color3F);break;

}

}

voidgljcxrk()管理及查询函数

{voidspjinku();

voidshanchu();

voidspchaxun();

voidxianshikucun();函数声明

charchoose;

menu1();调用菜单函数

scanf(%c,&choose);

scanf(%c,&choose);

for(;;)

switch(choose)功能函数选择

{case'1'spjinku();break;

case'2'shanchu();break;

case'3'spchaxun();break;

case'4'xianshikucun();break;

case'5'main1();break;

}

}

inttjzs()统计文本个数函数

{FILEfp;

inttJG=0,txcl=0,n;

chartHMJXH[20]={'0'},tpinpai[20]={'0'},tbaoxouqi[20]={'0'};

fp=fopen(F家电自助服务系统商品.txt,r);打开文件

for(n=0;!

feof(fp);n++)逐个读文件

fscanf(fp,%d%s%s%s%d,&tJG,tHMJXH,tpinpai,tbaoxouqi,&txcl);

n--;

fclose(fp);关闭文件

return(n);返回个数

}

inttjdzzs()统计文本个数函数

{FILEfp;

intzhenghao=0,n;

charmingzi[20]={'0'},SHriqi[20]={'0'},zHMJXH[20]={'0'};

fp=fopen(F家电自助服务系统顾客.txt,r);打开文件

for(n=0;!

feof(fp);n++)逐个读文件

fscanf(fp,%d%s%s%s,&zhenghao,&mingzi,&SHriqi,&zHMJXH);

fclose(fp);关闭文件

return(n);返回个数

}

voidspjinku()商品进库函数

{

mima1();

FILEfp;

intJG=0,xcl=0,n=0;

charHMJXH[20]={'0'},pinpai[20]={'0'},baoxouqi[20]={'0'};

charhitkey;

system(cls);

if((fp=fopen(F家电自助服务系统商品.txt,r))==NULL)打开商品文件,不存在此文件则新建

{fp=fopen(F家电自助服务系统商品.txt,w);

fclose(fp);

}

fp=fopen(F家电自助服务系统商品.txt,a);

printf(nnnnnnttt请按以下格式输入商品信息:

tttttt价格货名及型号品牌保修期进库量n请输入:

);按格式输入商品信息

system(color3F);

for(;hitkey!

=27;)循环输入

{if(n!

=0)

printf(请输入);

scanf(%d%s%s%s%d,&JG,HMJXH,pinpai,baoxouqi,&xcl);

fprintf(fp,%d%s%s%s%dn,JG,HMJXH,pinpai,baoxouqi,xcl);

printf(继续输入请按回车,结束输入请按escn);

system(color3F);

n++;

hitkey=getch();

for(;hitkey!

=13&&hitkey!

=27;)

hitkey=getch();

}

fclose(fp);

printf(nnnnnnttt保存成功,按任意键返回上一层!

);

system(color3F);

getch();

gljcxrk();返回上一层

}

voidshanchu()删除商品信息函数

{

mima1();

structshangpinhead=NULL;

structshangpinp,p1,p2;

inttJG=0,txcl=0,n=0,j,i;

chartHMJXH[20]={'0'},tpinpai[20]={'0'},tbaoxouqi[20]={'0'},ttHMJXH[20]={'0'};

charhitkey;

FILEfp;

if((fp=fopen(F家电自助服务系统商品.txt,r))==NULL)打开文件

{system(cls);

printf(nnnnnnnnnttt记录文件不存在!

按任意键返回...);

system(color3F);

getch();

gljcxrk();

}

else

{system(cls);

printf(nnnnnnnntt请输入你要删除的货名及型号);输入删除商品货名型号

system(color3F);

scanf(%s,&ttHMJXH);

printf(tt确认删除请回车,取消请按escn);

system(color3F);

hitkey=getch();

for(;hitkey!

=13&&hitkey!

=27;)

hitkey=getch();

if(hitkey==27)

gljcxrk();

fp=fopen(F家电自助服务系统商品.txt,r);

for(j=0;!

feof(fp);)读文件夹信息,统计个数

{j++;

fscanf(fp,%d%s%s%s%d,&tJG,tHMJXH,tpinpai,tbaoxouqi,&txcl);

}

fclose(fp);

fp=fopen(F家电自助服务系统商品.txt,r);

for(i=1;ij;i++)

{fscanf(fp,%d%s%s%s%d,&tJG,tHMJXH,tpinpai,tbaoxouqi,&txcl);

if(strcmp(ttHMJXH,tHMJXH))比较名字,将不同名字的信息复制到链表

{n++;

if(n==1)建立链表

{p1=p2=(structshangpin)malloc(LEN);

head=p1;

}

else

{p2-next=p1;

p2=p1;

p1=(structshangpin)malloc(LEN);新建链表

}

p1-JG=tJG;复制价格

strcpy(p1-HMJXH,tHMJXH);复制货名及型号

strcpy(p1-pinpai,tpinpai);复制品牌

strcpy(p1-baoxouqi,tbaoxouqi);复制保修期

p1-xcl=txcl;复制个数

}

}

if(n==0)

{head=NULL;

}

else

{

p2-next=p1;

p1-next=NULL;

fclose(fp);

}

}

fp=fopen(F家电自助服务系统商品.txt,w);清空文件

fclose(fp);

fp=fopen(F家电自助服务系统商品.txt,a);追加文件

p=head;

for(;p!

=NULL;)把链表内容覆盖到文件

{

fprintf(fp,%d%s%s%s%dn,p-JG,p-HMJXH,p-pinpai,p-baoxouqi,p-xcl);

p=p-next;

}

fclose(fp);关闭文件

system(cls);

printf(nnnnnnnntt删除成功ntt按任意键返回上一层n);

system(color3F);

getch();返回上一层

gljcxrk();

}

voidspchaxun()查询函数

{

FILEfp;

charchoose;

intttJG=0,tJG=0,txcl=0,n=0,k=0,i,l;

chartHMJXH[20]={'0'},ttpinpai[20]={'0'},tpinpai[20]={'0'},ttbaoxouqi[20]={'0'},tbaoxouqi[20]={'0'},ttHMJXH[20]={'0'};

if((fp=fopen(F家电自助服务系统商品.txt,r))==NULL)打开文件

{system(cls);

printf(nnnnnnnnnttt记录文件不存在!

按任意键返回...);

system(color3F);

getch();

gljcxrk();

}

l=tjzs();获得文件个数

menu2();调用菜单函数

scanf(%c,&choose);scanf(%c,&choose);选择查询方式

if(choose=='5')

return;

elseif(choose=='1')价格查询

{system(cls);

printf(请输入价格);

system(color3F);

scanf(%d,&ttJG);

}

else

if(choose=='2')货名及型号查询

{system(cls);

printf(请输入货名及型号);

system(color3F);

scanf(%s,ttHMJXH);

}

else

if(choose=='3')品牌查询

{system(cls);

printf(请输入品牌);

system(color3F);

scanf(%s,ttpinpai);

}

else

if(choose=='4')保修期查询

{system(cls);

printf(请输入保修期);

system(color3F);

scanf(%s,ttbaoxouqi);

}

system(cls);

for(i=0;il;i++)

{fscanf(fp,%d%s%s%s%d,&tJG,tHMJXH,tpinpai,tbaoxouqi,&txcl);读文件信息

if(ttJG==tJG!

strcmp(ttHMJXH,tHMJXH)!

strcmp(ttpinpai,tpinpai)!

strcmp(ttbaoxouqi,tbaoxouqi))输出查询信息

{

if(k==0)

{

printf(tttt查询结果nn);

printf(t价格货名及型号品牌保修期现存量n);

system(color3F);

}

printf(t%-4d%-8s%-8s%-8s%-4dn,tJG,tHMJXH,tpinpai,tbaoxouqi,txcl);

k++;

}

}

if(k==0)文件夹为空则输出无记录

{system(cls);

printf(nnnnnnntttt无符合记录!

n);

system(color3F);

getch();

gljcxrk();

}

fclose(fp);

getch();返回

gljcxrk();

}

voidxianshikucun()现实库存信息

{

FILEfp;

intJG=0,xcl=0,n=0,i=0,j=0;

charHMJXH[20]={'0'},pinpai[20]={'0'},baoxouqi[20]={'0'};

if((fp=fopen(F家电自助服务系统商品.txt,r))==NULL)打开文件夹

{

system(cls);

printf(nnnnnnnnnttt记录文件不存在!

);

system(color3F);

}

n=tjzs();

if(n==0)

{system(cls);

printf(nnnnnnnnnttt无任何记录!

);

system(color3F);

}

fp=fopen(F家电自助服务系统商品.txt,r);

system(cls);

printf();

printf(t价格货名及型号品牌保修期现存量n);

printf();

system(color3F);

for(i=0;in;i++)输出信息

{

fscanf(fp,%d%s%s%s%d,&JG,HMJXH,pinpai,baoxouqi,&xcl);

printf(t%-4d%-8s%-8s%-8s%-4dn,JG,HMJXH,pinpai,baoxouqi,xcl);

}

fclose(fp);

printf(tttt按任意键返回n);

system(color3F);

getch();返回

gljcxrk();

}

voidmenu3()显示订单系统主菜单

{system(cls);

printf();

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf(tttt1.订单登记nn);

printf(tttt2.退订登记nn);

printf(tttt3.订单情况查看nn);

printf(tttt4.返回上一层nn);

printf(ttt请按键选择,回车确定n);

printf(^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^);

printf();

system(color3F);

return;

}

voidDDJTD()订单系统函数

{voiddingdan();声明订单登记函数

voidtuiding();声明退订登记函数

voiddingdanCX();声明订单查询函数

charchoose;

menu3();

scanf(%c,&choose);

scanf(%c,&choose);选择功能

for(;;)

switch(choose)调用函数

{case'1'dingdan();break;

case'2'tuiding();break;

case'3'dingdanCX();break;

case'4'main1();break;

}

}

voiddingdan()订单函数

{

FILEfp,fp3;

structshangpinhead=NULL;

structshangpinp,p1,p2;

inttJG=0,txcl=0,i,loop,zhenghao=0,n=0,k=0,t=0,flag=0;

chartHMJXH[20]={'0'},tpinpai[20]={'0'},tbaoxouqi[20]={'0'},ttHMJXH[20]={'0'},mingzi[20]={'0'},SHriqi[20]={'0'},zHMJXH[20]={'0'};

charhitkey=0;

system(cls);

{

if((fp=fopen(F家电自助服务系统商品.txt,r))==NULL)打开商品文件

{

system(cls);

printf(nnnnnnnnntt本店无库存!

按任意键退出!

);

system(color3F);

getch();

exit(0);

}

else

{

{

printf(nnnnnnttt请输入订单货名型号:

ttttttn请输入:

);输入书货名及型号

system(color3F);

scanf(%s,zHMJXH);

k=tjzs();统计商品文件个数

for(i=0;ik;i++)读入商品信息,存储到链表

{

fscanf(fp,%d%s%s%s%d,&tJG,tHMJXH,tpinpai,tbaoxouqi,&txcl);

n++;

if(n==1)

{p1=p2=(structshangpin)malloc(LEN);

head=p1;

}

else

{p2-next=p1;

p2=p1;

p1=(structshangpin)malloc(LEN);新建链表

}

p1-JG=tJG;复制价格

strcpy(p1-HMJXH,tHMJXH);复制货名及型号

strcpy(p1-pinpai,tpinpai);复制品牌

strcpy(p1-baoxouqi,tbaoxouqi);复制保修期

p1-xcl=txcl;复制现存量

}

if(n==0)

head=NULL;

else

{

p2-next=p1;

p1-next=NULL;

fclose(fp);

}

}

}

p=head;

for(;p!

=NULL;)读链表

{

if(!

(strcmp(p-HMJXH,zHMJXH)))名字相同

{flag=1;标记取1

loop=p-xcl;现存量减1

(p-xcl)--;}

p=p-next;

}

if(flag&&(loop0))存在订单货物且现存量大于0

{fp=fopen(F家电自助服务系统商品.txt,w);

fclose(fp);

fp=fopen(F家电自助服务系统商品.txt,a);

p=head;

for(;p!

=NULL;)

{

fprintf(fp,%d%s%s%s%dn,p-JG,p-HMJXH,p-pinpai,p-baox

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1