汽车销售管理系统设计报告_第1页
汽车销售管理系统设计报告_第2页
汽车销售管理系统设计报告_第3页
汽车销售管理系统设计报告_第4页
汽车销售管理系统设计报告_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、西安郵電學院軟體設計報告題 目:汽車銷售管理系統院系名稱:電子工程學院 專業名稱:光電資訊工程班 級:光電1101班 學生姓名:學號(8位):指導教師:設計起止時間:1512年04月12日1512年04月19日一. 设计目的随着近年来我国经济的发展,国民生活水平的提高,国内的汽车产业开始迅猛发展,人民群众对于各种汽车的需求也是日益增多,也因此产生了很多汽车销售公司。在这些汽车销售公司你,他们都没有一套好的销售模式。因此,制作一套汽车销售管理系统有助于公司对汽车的管理、销售、提高利润,并且方便了客户查看汽车的信息、购买汽车,也更加了解各种汽车的性能和使用性。选择适合自己的汽车。二. 设计内容第一

2、步:需求分析 主要任务就是通过详细调查现实世界要处理的对象,明确用户的各种需求,然后在此基础上确定新系统的功能。在我设计的这个系统主要是调查客户对汽车的需求情况,客户想了解汽车的哪些信息,有哪些要求等等。第二步:概念结构设计 主要就是将需求分析阶段得到的用户需求抽象为信息世界的结构才能更好的用数据库管理系统来实现这些需求。第三步:对汽车销售管理系统进行管理和维护。三概要设计1功能模块图;功能模块图:主菜單查詢退出流覽排序計算編輯輸入 添加銷售資料刪除銷售資料修改銷售資料輸入銷售員資料輸入產品資料輸入銷售總數據按產品編號查詢按銷售員編號查詢2各个模块详细的功能描述。1)主函数main():协调各

3、个模块的顺序,让程序井然有序地按照事先安排的进行。2)欢迎接口函数welcome():作为程序的第一形象,欢迎用户使用本程序。3)输入数据函数void input():读取数据,为之后的程序运行提供了数据基础。4)输入销售员数据函数void input1():读取数据,与数字数据有所不同,是记录有关销售员信息的字符数据。5)输入销售数据函数void input3():读取数据,有关于销售的资料。6)删除销售数据函数void delete():在取消本次销售或者本次销售出现任何问题时使用,可以对数据进行清除,在编辑数据时使用。7)插入销售数据函数void insert():对于一名销售员来说有可

4、能一次完成多次销售,此时用插入数据函数可以将几次销售记录在一起,在编辑数据时使用。8)修改销售数据函数void modify():管理数据时对数据可以进行任何修改,在编辑资料时使用。9)计算销售总额和每种产品的销售额void calculat():便于日后对销售额和利润进行计算。10)根据销售员编号来查询资料 void search_salid():便于日后对销售员根据业绩进行考核。11)对销售数据进行排序void sort():有利于客户在选车时直观的了解汽车的销售资料。四详细设计1功能函数的调用关系图函数名函数原型功能返回值说明fcloseint fclose(file *fp)关闭fp所

5、指的文件,释放文件缓冲区。有错则返回非0,否则返回0feofint feof(file *fp)检查档是否结束,遇文件结束符返回非零值,否则返回0。fopenfile*open(char *filename,char mode)以mode指定的方式打开名为filename的檔成功,返回一个文件指针(文件信息区的起始地址),否则返回0。freadint fread(char *pt,unsignedsize,unsigned n,file *fp);从fp所指定的档中读取长度为size的n个数据项,存到pt所指定向的内存区返回所读的数据项个数,如遇文件结束或出错返回0fwriteint fwir

6、te (char *ptr,unsigned size unsigned n,file *fp);把ptr所指向的n *size个字节输出到fp所指向的檔中写到fp文件中的数据项的个数getcharint getchar(void);从标准输入设备读取下一个字符。读字符。若文件结束或出错,则返回-1printfint printf(char *format,args,)按format指向的格式字符串规定的格式,将输出表列args的值输出到标准输出设备。输出字符的个数。若出错,返回负数format字符串,或字符数组起始地址scanfint scanf (char *format,args,);从

7、标准的输入设备按format指向的格式字符串所规定的格式,输入数据给args所指向的单元读入并赋给args的数据个数。遇文件结束返回eof,出错返回0args为指针strcmpint strcmp(char *str1,char *str2);比较两个字符串str1,str2str1str2,返回正数包含檔string.hstrcpychar *strcpy(char*str1,char *str2);把str2指向的字符串复制str1到去返回str1包含檔string.hstrlenunsigned int strlen(char *str);统计字符串中str中字符的个数(不包括终止符0)

8、返回字符个数包含檔string.h2各功能函数的数据流程图;3重点设计及编码。五测试资料及运行结果1正常测试数据(3组)及运行结果;2非正常测试数据(2组)及运行结果。六调试情况,设计技巧及体会1对自己的设计进行评价,指出合理和不足之处,提出改进方案;2对设计及调试过程的心得体会。七参考文献八附录:源代码#include #include #include struct salman char id15; char name15; sal20; struct car char id15; int price; car20; struct salesdata int year; int mont

9、h; int day; int soldnum; struct car car; struct salman salman; struct car all;sada20;void welcome() printf(tt#n);printf(tt # 1-input the data #n);printf(tt # 2-edit data #n);printf(tt # 3-browse the data #n);printf(tt # 4-calculat #n);printf(tt # 5-sort #n);printf(tt # 6-search #n);printf(tt # 7-exi

10、t the system #n);printf(tt#n);void save( ) file *fp; int i; char all15,x; printf(ndo you want to save the data?n); printf(please input: y or nn); x=getch(); printf(your choice: %cn,x); if(x!=n&x!=n&x!=y&x!=y) printf(wrong!choose again!n); x=getch(); printf(your choice: %cn,x); if(x=n|x=n) getch(); r

11、eturn; if(x=y|x=y) printf(please input the name of the file!n); scanf(%s,all); if(fp=fopen(all,wb)=null) printf(can not open filen); return; else for(i=0;i15;i+) fwrite(&sadai,sizeof(struct salman),1,fp); printf(*save succeed*n); fclose(fp); return;void input() int m; void input1(); void input2(); v

12、oid input3(); printf(which data do you want to input?n); printf(1-personn); printf(2-carn); printf(3-datan); printf(4-back to welcomen); printf(your choose:); scanf(%d,&m); switch(m) case 1: input1(); break; case 2: input2(); break; case 3: input3(); break; case 4: welcome(); break; default : printf

13、(error!n); void input1() file *fp1; int i,m; printf(how many persons do you want to input?n); printf(the amount is:); scanf(%d,&m); for(i=0;im;i+) printf(the basic data of person %d:n,i+1); printf(number is :); scanf(%s,sali.id); printf(name:); scanf(%s,); fp1=fopen(input1,wb); for(i=0;im;i

14、+) if(fwrite(&sali,sizeof(struct salman),1,fp1)!=1) printf(file write errorn); fclose(fp1); fp1=fopen(input1,rb); printf(ncheck the data:n); for(i=0;im;i+) fread(&sali,sizeof(struct salman),1,fp1); printf(%s %s n,sali.id,); fclose(fp1); getch(); input(); void input2() file *fp2; int i,m; pr

15、intf(how many cars do you want to input?n); printf(the amount is:); scanf(%d,&m); for(i=0;im;i+) printf(the basic data of car %d:n,i+1); printf(the car number is :); scanf(%s,cari.id); printf(price:); scanf(%d,&cari.price); fp2=fopen(input2,wb); for(i=0;im;i+) if(fwrite(&cari,sizeof(struct salman),1

16、,fp2)!=1) printf(file write errorn); fclose(fp2); fp2=fopen(input2,rb); printf(ncheck the data:n); for(i=0;im;i+) fread(&cari,sizeof(struct salman),1,fp2); printf(%s %dn,cari.id,cari.price); fclose(fp2); getch(); input();int input3_1(int i) printf(please input the data:); printf(nthe data %d:n,i+1);

17、 printf(the sales number is :); scanf(%s,sadai.salman.id); printf(the car number is :); scanf(%s,sadai.car.id); printf(the cars price is :); scanf(%d,&sadai.car.price); printf(soldnum:); scanf(%d,&sadai.soldnum); printf(day:); scanf(%d-%d-%d,&sadai.year,&sadai.month,&sadai.day); return; void input3(

18、) file *fp3; int i,m=0; char x; for(i=0;i20;i+) if(strlen(sadai.salman.id)!=0) m+; for(i=m;i20-1;i+) input3_1(i); printf(do you want to continue inputing new data?n); printf(please input: y or nn); x=getch();printf(your choice:%c.n,x); if(x!=n&x!=n&x!=y&x!=y) printf(wrong!choose again!n); x=getch();

19、 printf(your choice:%c.n,x); if(x=y|x=y) continue; if(x=n|x=n) break; fp3=fopen(input3,wb); for(m=0;mi+1;m+) if(fwrite(&sadam,sizeof(struct salesdata),1,fp3)!=1) printf(file write errorn); fclose(fp3); fp3=fopen(input3,rb); printf(ncheck the data:n); for(m=0;mi+1;m+) fread(&sadam,sizeof(struct salma

20、n),1,fp3); printf(%s %s %d %d %d-%d-%dn,sadam.salman.id,sadam.car.id,sadam.soldnum,sadam.car.price,sadam.year,sadam.month,sadam.day); fclose(fp3); getch(); input();void insert() int i,m=0; for(i=0;i20;i+) if(strlen(sadai.salman.id)!=0) m+; input3_1(m); save(); void delete() char id20; int i,j,b=0,m=

21、0; for(i=0;i20;i+) if(strlen(sadai.salman.id)!=0) m+; printf(enter the id of the car which you want to delete!); scanf(%s,id); for(i=0;im;i+) if(strcmp(sadai.salman.id,id)=0) for(j=i;j=m;j+) sadaj=sadaj+1; b=1; if(b=0) printf(do not find out your data!n); if(b=1) printf(succeed!the data has been del

22、eted!n); save();void modify() int i,j,b=0,m=0; char id20; struct saldata int year,month,day; int soldnum,unitprice; char id120,id220; sada120;for(i=0;i20;i+) if(strlen(sadai.salman.id)!=0) m+; printf(enter the id of the person:); scanf(%s,id);for(i=0;im;i+) if(strcmp(sadai.salman.id,id)=0) printf(no

23、w,please input the new data:); printf(nthe data %d:n,i+1); printf(the sales number is :); scanf(%s,sada1i.id1); printf(the cars number is :); scanf(%s,sada1i.id2); printf(the price is :); scanf(%d,&sada1i.unitprice); printf(soldunmber:); scanf(%d,&sada1i.soldnum); printf(day:); scanf(%d-%d-%d,&sada1

24、i.year,&sada1i.month,&sada1i.day); strcpy(sadai.salman.id,sada1i.id1); strcpy(sadai.car.id,sada1i.id2); sadai.soldnum=sada1i.soldnum; sadai.car.price=sada1i.unitprice; sadai.year=sada1i.year; sadai.month=sada1i.month; sadai.day=sada1i.day; b=1; if(b=0) printf(do not find out your data!n); if(b=1) pr

25、intf(succeed!the data has been modified!n); save();void editor() int m; printf(which operation do you want to do?n); printf(1-deleten); printf(2-modifyn); printf(3-insertn); printf(4-back to welcomen); printf(nyour choose:); scanf(%d,&m); switch(m) case 1: delete(); break; case 2: modify(); break; c

26、ase 3: insert(); break; case 4: welcome(); break; default : printf(error!n); void search_salid() int i,flag=0; char id15; printf(please enter the number of person:); scanf(%s,id); for(i=0;i20;i+) if(strcmp(sadai.salman.id,id)=0) printf(the information of this number:n); printf(sal_id car_id soldnum

27、unitprice solddayn); printf( %s %s %d %d %d-%d-%dn,sadai.salman.id,sadai.car.id,sadai.soldnum,sadai.car.price,sadai.year,sadai.month,sadai.day); flag=1; if(flag=0) printf(the number is not exist !n); save();void search_carid() char id15; int i,flag=0; printf(please enter the id of car:); scanf(%s,id

28、);for(i=0;i20;i+) if(strcmp(sadai.car.id,id)=0) printf(the information of this number:n); printf(car_id sal_id soldnum unitprice solddayn); printf( %s %s %d %d %d-%d-%dn,sadai.car.id,sadai.salman.id,sadai.soldnum,sadai.car.price,sadai.year,sadai.month,sadai.day); flag=1; if(flag=0) printf(the carid

29、is not exist !n); save();void search() int m; printf(what do you want to search?n); printf(1-the id of person n 2-the id of carn); scanf(%d,&m); if(m!=1&m!=2) printf(wrong!enter again:); scanf(%d,&m); if(m=1) search_salid(); if(m=2) search_carid(); void calculat() int p20,sum=0,i,m=0; for(i=0;i20;i+

30、) if(strlen(sadai.salman.id)!=0) m+;for(i=0;im;i+) pi=sadai.soldnum*sadai.car.price; sum=sum+pi; printf(sal_id: %-7stcar_id: %-7stsales: %-10dn, sadai.salman.id,sadai.car.id,pi); printf(total sales: %dn,sum); save();void sort() int i,j,t,s,m=0,b20,a20; char temp20; for(i=0;i20;i+) if(strlen(sadai.sa

31、lman.id)!=0) m+;for(i=0;im;i+) bi=sadai.soldnum*sadai.car.price; ai=sadai.soldnum; strcpy(sadai.all.id,sadai.car.id); for(i=1;im;i+) for(j=0;jbj+1) t=bj; bj=bj+1; bj+1=t; s=aj; aj=aj+1; aj+1=s; strcpy(temp,sadaj.all.id); strcpy(sadaj.all.id,sadaj+1.all.id); strcpy(sadaj+1.all.id,temp); for(i=0;im;i+)printf(car_id: %-5stsoldnum: %-5dtsale: %-10dn,sadai.all.id,ai,bi); save();void browse() file *fp1,*fp2; int i,m=0; for(i=0;i20;i+) if(strlen(sadai.salman.id)!=0) m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论