

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、秦皇岛分校NorthEasternUniversity At QinHuangDaoC语言课程设计综合性程序设计报告之源程序设计题目:电脑公司进销存管理系统专业:冶金工程学号:8090507姓名:刘欢成 绩:_设计时间:2010 年 11 月 03 日二开题说明1问题概要该系统用于处理某电脑公司的设备买入,卖出,仓储等设备账目。在买入 设备时,记录设备的数量型号(如 computer,keyboard 和价钱,并在库房记录中 添加设备,在卖出设备时从库房中减掉该设备,并根据卖出的数量型号和价钱 得出每一笔买出的利润。每个一段时间盘点库房和账目计算出利润等数据。基本要求:有货物管理(设备的添加,
2、删除,修改)有账目管理可以查询账目清单可以计算年度或月份或季度利润。2问题分析:先定义合适的结构体,存储物品信息。在程序中建立一个文件用于存储,凡进行了进货操作的物品在文件中都有记录, 进货时由于尚不知售货时间与售 价、利润,故此三项(实际为四项,时间分为年、月两项)暂先赋值为零,待 进行售货操作时再输入各数值,其中利润由系统自动计算得出并保存。账目清 单分为已售、仓储两部分,由此可看到所有购进、卖出的货物信息。月利润查 询可查得所输入年月的各类所售货物数量与利润。功能模块四源程序#i nclude #i nclude #i nclude vconi o.h#in clude #i nclud
3、e #define LEN sizeof(struct object)#defi ne FORMAT1 t%-8d%-11s%-9.2f%-6d%-4dn#defi neDATA1(p1+i)-nu m,(p1+i)-n ame,(p1+i)-i nprice,(p1+i)-i ny ear,(p1+i)-i nmonth#defi ne FORMAT2 t%-8d%-11s%-9.2f%-9.2f%-7.2f%-6d%-4d%-6d%-4dn#defi neDATA2(p1+i)-nu m,(p1+i)-n ame,(p1+i)-i nprice,(p1+i)-outprice,(p1+i)
4、-profit,(p1+i)-iny ear,(p1+i)-inmon th,(p1+i)-outyear,(p1+i)-outm onthvoid in();void show();void modify();void sell();void menu();void mon thearn();struct objectint nu m,i ny ear,i nmon th,outyear,outmo nth;char n ame10;float in price,outprice,profit; obj100;struct object *p1=obj;mai n()int n;menu()
5、;while( n)switch( n)case 1: in( );break;case 2:sell();break;case 3:modify();break;case 4:show();break;case 5:m on thear n( );break;default:break; getch();menu();sca nf(%d,&n);void menu ()/ 菜单prin tf(tt0.退出 n);printf(tt1.进货操作 n);printf(tt2.售货操作 n);system(cls);prin tf(nnnnnn);r4F/vv *菜单*n);printf(tt 3
6、.修改信息 n);printf(tt4.账目清单 n);printf(tt5 月利润查询 n);void in() /进货操作 int i,m=0;char ch2;FILE *p;if( (p=fope n( data,a+)=NULL)printf(打不开文件! n);/打开文件retur n;while(!feof(p)if(fread(&objm ,L EN,1,p)=1)m+;/将数据读入内存fclose(p);if(m=0)printf(tt*n);printf(无记录! n);printf(请确认是否进货?( y/n);sea nf(%s,ch);while(strcmp(ch,
7、y)=0|strcmp(ch,y)=0)printf(请输入设备编号:);sca nf(%d, &objm. nu m);for(i=0;inum=objm. num)printf(此号已存在,按任意键继续!);getch();fclose(p);return;printf(设备名称:);sca nf(%s,objm. name);printf(进价:”);sca nf(%f,&objm.i nprice);printf(进货年、月:);sea nf(%d%d,&objm.i nyear,&objm.i nmon th);objm.outprice=0;objm.outyear=0;(p1+m
8、)-outm on th=0;fope n( data,w);/打开文件用以向磁盘导入数据for(i=0;i=m;i+)fwrite(&obji,LEN,1,p);if(fwrite(&objm ,L EN,1,p)!=1)printf(无法保存!);getch();elseprintf(%s 保存成功! n,);m+;printf(继续?( y/n);sca nf(%s,ch);fclose(p);printf(保存完毕! n);void sell() /售货操作FILE *p;int snu m,i,j,m=0;char ch2;if(p二fope n( data,rb)
9、=NULL)prin tf(无法打开文件! n); retur n;while(!feof(p)if(fread(&objm ,L EN,1,p)=1)m+;fclose(p);if(m=0)/打开文件/读入printf(无记录! n);return;printf(请输入编号:”);sca nf(%d, &sn um);for(i=0;inum)break;if(ioutprice);(p1+i)-profit=(p1+i)-outprice-(p1+i)-i nprice);printf(n 请输入售出年、月:);sca nf(%d%d,&(p1+i)-outyear,&(p1+i)-out
10、mo nth);if(p=fope n(data,wb+)=NULL)printf(打不开文件! n);return;for(j=0;jm;j+)if(fwrite(&objj,LEN,1,p)!=1)printf(无法保存! n); getch();printf(售货成功!); fclose(p);retur n;elsereturn;/判断 2elseprintf(无此物品!);return;判断 1void modify() / 修改信息FILE *p;printf(找到此货物! n);int i,j,m=O,s num;if(p二fope n( data,rb)=NULL)printf
11、(打不开文件! n);return;while(!feof(p)if(fread(&objm ,L EN,1,p)=1)m+;if(m=0)printf(无记录! n);fclose(p);return;printf(请输入欲修改信息的货物编号:);sca nf(%d,&sn um);for(i=0;inum)break;if(i name);printf(n 进价:);sea nf(%f,&(p1+i)-i nprice);printf(n 进货年、月:);sea nf(%d%d,&(p1+i)-i nyear,&(p1+i)-i nmon th);if(p=fope n(data,wb+)
12、=NULL)printf(打不开文件! n);return;for(j=0;jm;j+)if(fwrite(&objj,LEN,1,p)!=1)printf(无法保存!);getch();fclose(p);else return;printf(t 编号 名称进价进货时间tn);void show() /账目清单FILE *p;int i,m=0;if(p二fope n( data,rb)=NULL)printf(打不开! ”);while(!feof(p)if(fread(&objm ,L EN,1,p)=1)m+;fclose(p);printf(已售nt 编号 名称进价 售价 利润间出售
13、时间tn);for(i=0;iprofit!=0)printf(FORMAT2,DA TA2);printf(仓储 n);进货时printf(t 编号 名称进价进货时间tn);for(i=0;iprofit=0)prin tf(F0RMAT1,DATA1);void mon thearn() 月利润FILE *p;int m=0,s=0,a=0,b=0,c=0,d=0,y,z;float sum1=0,sum2=0,sum3=0,sum4=0;if(p=fope n( data,rb)=NULL)printf(打不开文件! n);retur n;/打开文件while(!feof(p)if(fr
14、ead(&objm ,L EN,1,p)=1)m+;fclose(p);/将数据读入内存printf(请输入欲查询的年份、月份:);sea nf(%d%d, &y,& z);for(s=0;sm;s+)if(strcmp(objs. name,zhuji)=0)&(y=objs.outyear)&( z=objs.outmon th)a+;sum1+=fit;if(strcmp(objs. name,xianshiqi)=0)&(y=objs.outyear)&( z=objs.outm on th)b+;sum2+=fit;if(strcmp(objs. name,jianpan ”)=0)&(y=objs.outyear)&( z=objs.outmo nth)c+;sum3+=fit;if(strcmp(objs.na
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年及未来5年中国鲜鸡蛋行业发展前景预测及投资战略研究报告
- 2025年合肥市第一人民医院招聘若干人模拟试卷及参考答案详解1套
- 2025南平市公安局面向社会公开招聘辅警模拟试卷含答案详解
- 2025年江西省中小学教师及特岗教师招聘笔试九江考区考前自测高频考点模拟试题附答案详解
- 2025金华兰溪市市属国企招聘32人考前自测高频考点模拟试题及一套参考答案详解
- 2025江苏苏州工业园区翡翠幼儿园教学辅助人员招聘1人考前自测高频考点模拟试题及答案详解(必刷)
- 智能巡护系统构建-洞察与解读
- 2025福建集美区杏东中学非在编教师招聘1人模拟试卷附答案详解(完整版)
- 2025江苏商贸职业学院招聘考前自测高频考点模拟试题带答案详解
- 2025辽宁省检验检测认证中心招聘5人考前自测高频考点模拟试题及答案详解(网校专用)
- 农村自用光伏安装合同范本
- 学校校友工作汇报
- 汽车工厂培训课件
- 拔牙后健康教育与护理指南
- 环卫车辆安全培训课件
- 丝织品微生物防治-洞察及研究
- (2025)中国石油化工集团中石化招聘笔试试题及答案
- 以桂为墨:高中桂花文化校本课程的开发与实践探索
- 游戏俱乐部投资合同协议书
- 三级老年人能力评估师试题(附答案)
- 2025年云南事业单位a类真题及答案
评论
0/150
提交评论