重庆美图库!!
查看: 1303|回复: 0
打印 上一主题 下一主题
收起左侧

[原创]C语言销售监控程序:(实现)

[复制链接]
1
跳转到指定楼层
发表于 2007-2-1 13:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
重庆商务网,重庆电子商务第一网!

登陆享受更多浏览权限哟~

您需要 登录 才可以下载或查看,没有帐号?入驻经典 

x
#include&lt;stdio.h&gt;<br/>#include&lt;string.h&gt;<br/>#include&lt;stdlib.h&gt;<br/>typedef struct<br/>{<br/>&nbsp;int id;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //项目编号<br/>&nbsp;char name[20];&nbsp;&nbsp; //名称<br/>&nbsp;int aim;&nbsp;&nbsp; //目标销售额<br/>&nbsp;int atboy; //年初至今销售额<br/>}item;<br/>typedef struct<br/>{<br/>&nbsp;int id;&nbsp;&nbsp;&nbsp; //项目编号<br/>&nbsp;int sellnum;&nbsp; //已销售数量&nbsp;<br/>}sales;<br/>#define size1 sizeof(item)<br/>#define size2 sizeof(sales)<br/>void add();<br/>void note();<br/>void display1();<br/>void del();<br/>void display2();<br/>void main()<br/>{<br/>&nbsp;int i;<br/>&nbsp;do<br/>&nbsp;{<br/>&nbsp;&nbsp;system("cls");<br/>&nbsp;&nbsp;printf("╔═════════╦═╦╦═╦╦═╦╦═╦╦═╦╦═╦═════════╗\n");<br/>&nbsp;&nbsp;printf("╠═════════╣销╠╣售╠╣监╠╣控╠╣系╠╣统╠═════════╣\n");<br/>&nbsp;&nbsp;printf("╚═════════╩═╩╩═╩╩═╩╩═╩╩═╩╩═╩═════════╝\n");<br/>&nbsp;&nbsp;printf("\t\t①.添加新项目的详细信息\n\n");<br/>&nbsp;&nbsp;printf("\t\t②.记录销售详细信息\n\n");<br/>&nbsp;&nbsp;printf("\t\t③.删除现有项目的详细信息\n\n");<br/>&nbsp;&nbsp;printf("\t\t④.显示根据项目号查出销售详细信息\n\n");<br/>&nbsp;&nbsp;printf("\t\t⑤.显示已达到销售的项目的报告\n\n");<br/>&nbsp;&nbsp;printf("\t\t⑥.退出\n");<br/>&nbsp;&nbsp;printf("\n请选择1 ~ 6: ");<br/>&nbsp;&nbsp;scanf("%d",&amp;i);<br/>&nbsp;&nbsp;if(i==1)<br/>&nbsp;&nbsp;&nbsp;add();<br/>&nbsp;&nbsp;else if(i==2)<br/>&nbsp;&nbsp;&nbsp;note();<br/>&nbsp;&nbsp;else if(i==3)<br/>&nbsp;&nbsp;&nbsp;del();<br/>&nbsp;&nbsp;else if(i==4)<br/>&nbsp;&nbsp;&nbsp;display1();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else if(i==5)<br/>&nbsp;&nbsp;&nbsp;display2();<br/>&nbsp;}while(i!=6);<br/>}<br/>void add()//添加新项目的详细信息。<br/>{<br/>&nbsp;FILE *fp1,*fp3;<br/>&nbsp;item item1;&nbsp;&nbsp;<br/>&nbsp;char flag;<br/>&nbsp;int n=1,un=0;<br/>&nbsp;if((fp1=fopen("item.dat","a+b"))==NULL){printf("item.dat文件创建错误!\n");return;}<br/>&nbsp;system("cls");<br/>&nbsp;printf("\n■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;printf("■&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 添加新项目的详细信息&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ■\n");<br/>&nbsp;printf("■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;do<br/>&nbsp;{&nbsp;&nbsp;<br/>&nbsp;&nbsp;if((fp3=fopen("num.txt","r"))==NULL)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;item1.id=n;<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;if((fp3=fopen("num.txt","r"))!=NULL)<br/>&nbsp;&nbsp;{&nbsp;<br/>&nbsp;&nbsp;&nbsp;fscanf(fp3,"%d",&amp;un);<br/>&nbsp;&nbsp;&nbsp;item1.id=un+n;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;fclose(fp3);<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;printf("\t\n请输入你要添加项目的详细信息(当前项目号:%d)!\n",item1.id);<br/>&nbsp;&nbsp;printf("\n名称:");<br/>&nbsp;&nbsp;scanf("%s",item1.name);<br/>&nbsp;&nbsp;printf("\n目标销售额:");<br/>&nbsp;&nbsp;scanf("%d",&amp;item1.aim);<br/>&nbsp;&nbsp;item1.atboy=0;<br/>&nbsp;&nbsp;if(strlen(item1.name)&gt;0)//判断用户输入的名字是否不为空。<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;fwrite(&amp;item1,size1,1,fp1);<br/>&nbsp;&nbsp;&nbsp;printf("\n是否继续输入&lt;Y/N&gt;\n");<br/>&nbsp;&nbsp;&nbsp;if((fp3=fopen("num.txt","w"))==NULL)<br/>&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;printf("文件打开错误!");<br/>&nbsp;&nbsp;&nbsp;&nbsp;return;<br/>&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;fprintf(fp3,"%d",item1.id);//把ID的最大值赋与文件num.txt里。<br/>&nbsp;&nbsp;&nbsp;fclose(fp3);<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;else<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("输入的名字不能为空!是否从新输入&lt;Y/N&gt;\n");&nbsp;<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;flag=getch();<br/>&nbsp;}while(flag=='y'||flag=='Y');<br/>&nbsp;fclose(fp1);&nbsp;<br/>}<br/>void note()//记录销售详细信息<br/>{<br/>&nbsp;int nu,i;<br/>&nbsp;item item1,*p1;<br/>&nbsp;sales *p2;<br/>&nbsp;FILE *fp1,*fp2,*fp3;<br/>&nbsp;if((fp1=fopen("item.dat","rb"))==NULL){printf("\n没有找到项目,请选择1添加项目信息!\n");getch();return;}&nbsp;<br/>&nbsp;if((fp3=fopen("num.txt","r"))==NULL){printf("num.txt文件打开错误");return;}<br/>&nbsp;fscanf(fp3,"%d",&amp;nu);<br/>&nbsp;if(nu==0){printf("\n无项目信息请输入!");getch();return;}<br/>&nbsp;p1=(item*)malloc(size1*nu);<br/>&nbsp;p2=(sales*)malloc(size1*nu);<br/>&nbsp;for(i=0;i&lt;nu;i++)<br/>&nbsp;{<br/>&nbsp;&nbsp;fread(&amp;item1,size1,1,fp1);<br/>&nbsp;&nbsp;p1=item1;<br/>&nbsp;}<br/>&nbsp;fcloseall();<br/>&nbsp;system("cls");<br/>&nbsp;printf("\n■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;printf("■&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 记录销售详细信息&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ■\n");<br/>&nbsp;printf("■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;for(i=0;i&lt;nu;i++)<br/>&nbsp;{<br/>&nbsp;&nbsp;if(p1.atboy==0)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("\n==============================================\n");<br/>&nbsp;&nbsp;&nbsp;printf("项目名称:%s&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 项目编号:%d&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \n",p1.name,p1.id);<br/>&nbsp;&nbsp;&nbsp;printf("\n请输入已销售数量(数字):");<br/>&nbsp;&nbsp;&nbsp;scanf("%d",&amp;p2.sellnum);<br/>&nbsp;&nbsp;&nbsp;p2.id=p1.id;<br/>&nbsp;&nbsp;&nbsp;p1.atboy=p2.sellnum;<br/>&nbsp;&nbsp;&nbsp;printf("销售数量添加修改完成!");&nbsp;&nbsp;<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;else<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;p2.id=p1.id;<br/>&nbsp;&nbsp;}<br/>&nbsp;}&nbsp;<br/>&nbsp;if((fp1=fopen("item.dat","w"))==NULL)<br/>&nbsp;{printf("文件打开错误!");return;}<br/>&nbsp;if((fp2=fopen("sales.dat","w"))==NULL)<br/>&nbsp;{printf("文件打开错误!");return;}<br/>&nbsp;fwrite(p2,size2,nu,fp2);<br/>&nbsp;fwrite(p1,size1,nu,fp1);<br/>&nbsp;fcloseall();<br/>}<br/>void del()<br/>{<br/>&nbsp;FILE *fp1,*fp2,*fp3;<br/>&nbsp;int i,n,mun,a=0,b=0;<br/>&nbsp;item *p1,item1;<br/>&nbsp;sales *p2,item2;<br/>&nbsp;system("cls");<br/>&nbsp;printf("\n■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;printf("■&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 删除现有项目的详细信息&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ■\n");<br/>&nbsp;printf("■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;printf("\n请输入要删除项目的编号:");<br/>&nbsp;scanf("%d",&amp;mun);<br/>&nbsp;if((fp1=fopen("item.dat","rb"))==NULL || (fp2=fopen("sales.dat","rb"))==NULL)<br/>&nbsp;{printf("无项目信息!请输入!");return;}<br/>&nbsp;if((fp3=fopen("num.txt","r"))==NULL)<br/>&nbsp;{printf("无项目信息!请输入!");return;}<br/>&nbsp;fscanf(fp3,"%d",&amp;n);<br/>&nbsp;if(n==0){printf("\n无项目信息请输入!");getch();return;}<br/>&nbsp;p1=(item*)malloc(size1*n);<br/>&nbsp;p2=(sales*)malloc(size2*n);<br/>&nbsp;for(i=0;i&lt;n;i++)<br/>&nbsp;{<br/>&nbsp;&nbsp;fread(&amp;item1,size1,1,fp1);<br/>&nbsp;&nbsp;if(item1.id!=mun)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;p1[a]=item1;<br/>&nbsp;&nbsp;&nbsp;a++;<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;fread(&amp;item2,size2,1,fp2);<br/>&nbsp;&nbsp;if(item2.id!=mun)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;p2=item2;<br/>&nbsp;&nbsp;&nbsp;b++;<br/>&nbsp;&nbsp;}<br/>&nbsp;}<br/>&nbsp;printf("\n\n删除成功!\n");<br/>&nbsp;fcloseall();<br/>&nbsp;if((fp1=fopen("item.dat","w"))==NULL || (fp2=fopen("sales.dat","w"))==NULL)<br/>&nbsp;{<br/>&nbsp;&nbsp;printf("文件打开错误");<br/>&nbsp;&nbsp;return;<br/>&nbsp;}<br/>&nbsp;for(i=0;i&lt;a;i++)<br/>&nbsp;{<br/>&nbsp;&nbsp;p1.id=i+1;<br/>&nbsp;&nbsp;p2.id=i+1;<br/>&nbsp;}<br/>&nbsp;fwrite(p2,size2,a,fp2);<br/>&nbsp;fwrite(p1,size1,a,fp1);<br/>&nbsp;if((fp3=fopen("num.txt","w"))==NULL)<br/>&nbsp;{<br/>&nbsp;&nbsp;printf("文件打开错误!");<br/>&nbsp;&nbsp;return;<br/>&nbsp;}<br/>&nbsp;fprintf(fp3,"%d",a);<br/>&nbsp;fcloseall();<br/>&nbsp;printf("\n==============================================\n");<br/>&nbsp;printf("\n按任意键返回主菜单!");<br/>&nbsp;getch();<br/>}<br/>void display1()//显示根据项目号查出销售详细信息<br/>{<br/>&nbsp;int a,s;<br/>&nbsp;sales item2;<br/>&nbsp;FILE *fp2;<br/>&nbsp;char flag;<br/>&nbsp;if((fp2=fopen("sales.dat","rb"))==NULL)<br/>&nbsp;{<br/>&nbsp;&nbsp;printf("\n没有找到项目销售信息,请选择2添加信息!");<br/>&nbsp;&nbsp;getch();<br/>&nbsp;&nbsp;return;<br/>&nbsp;}<br/>&nbsp;do<br/>&nbsp;{<br/>&nbsp;&nbsp;system("cls");<br/>&nbsp;&nbsp;printf("\n■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;&nbsp;printf("■&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 显示根据项目号查出销售详细信息&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ■\n");<br/>&nbsp;&nbsp;printf("■〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■\n");<br/>&nbsp;&nbsp;printf("\n\n请输入要查询的项目编号:");<br/>&nbsp;&nbsp;scanf("%d",&amp;a);<br/>&nbsp;&nbsp;rewind(fp2);<br/>&nbsp;&nbsp;while(!feof(fp2))<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;fread(&amp;item2,size2,1,fp2);<br/>&nbsp;&nbsp;&nbsp;if(item2.id==a)<br/>&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;printf("\n\n==============================================\n");<br/>&nbsp;&nbsp;&nbsp;&nbsp;printf("\n项目编号:%d&nbsp;&nbsp;&nbsp;&nbsp; 已销售数量:%d&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \n",item2.id,item2.sellnum);<br/>&nbsp;&nbsp;&nbsp;&nbsp;s=1;<br/>&nbsp;&nbsp;&nbsp;&nbsp;break;<br/>&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;else<br/>&nbsp;&nbsp;&nbsp;&nbsp;s=0;<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;if(s==0)<br/>&nbsp;&nbsp;{printf("\n无法找到这个项目");}<br/>&nbsp;&nbsp;printf("\n\n==============================================");<br/>&nbsp;&nbsp;printf("\n是否继续查询&lt;Y/N&gt;");<br/>&nbsp;&nbsp;scanf(" %c",&amp;flag);<br/>&nbsp;}while(flag=='Y'||flag=='y');<br/>&nbsp;fclose(fp2);<br/>}<br/>void display2()<br/>{<br/>&nbsp;item item1;<br/>&nbsp;FILE *fp1,*fp3;<br/>&nbsp;int n,i;<br/>&nbsp;if((fp1=fopen("item.dat","rb"))==NULL)<br/>&nbsp;{<br/>&nbsp;&nbsp;printf("出错");<br/>&nbsp;&nbsp;exit(1);<br/>&nbsp;}<br/>&nbsp;if((fp3=fopen("num.txt","r"))==NULL)<br/>&nbsp;{<br/>&nbsp;&nbsp;printf("出错");<br/>&nbsp;&nbsp;exit(1);<br/>&nbsp;}<br/>&nbsp;fscanf(fp3,"%d",&amp;n);<br/>&nbsp;printf("项目编号\t项目名称\t目标销售额\t年初至今销售额");<br/>&nbsp;for(i=0;i&lt;n;i++)<br/>&nbsp;{<br/>&nbsp;&nbsp;fread(&amp;item1,size1,1,fp1);<br/>&nbsp;&nbsp;if(item1.aim&lt;=item1.atboy)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("\n %d\t\t %s\t\t %d\t\t %d\n",item1.id,item1.name,item1.aim,item1.atboy);<br/>&nbsp;&nbsp;}<br/>&nbsp;}<br/>&nbsp;printf("按任意键返回主菜单!");<br/>&nbsp;getch();<br/>&nbsp;fclose(fp1);<br/>}<br/>
发布商机信息及企业宣传推广--请移步注册重庆商务网!!
快捷入口:给经典重庆客服留言
您需要登录后才可以回帖 登录 | 入驻经典  

本版积分规则

  • 欢迎关注重庆发展,多发帖多回帖才能持续保持帐号活力哟!请不要发表任何政 治,领 导,官 员,人 事及其它违法违规类言论,以免帐号被封禁。感谢您的支持和理解!
经典重庆旗下网站 | 24小时客服:13424176859 308675020

爱重庆,爱上经典重庆! 爱重庆,就上经典重庆!

快速回复 返回顶部 返回列表