笔记本电脑销售管理系统-C语言-课程设计-实验

  • 格式:doc
  • 大小:36.00 KB
  • 文档页数:8

笔记本电脑销售管理系统要求:实验6 笔记本电脑销售管理系统笔记本电脑销售信息包括:产品名称、品牌、产品型号、销售数量、进价、库存数量、售价、总金额(销售数量*售价)。

系统的主要功能包括:1.创建笔记本电脑产品销售信息文件,根据提示输入若干笔记本电脑的信息,并将这些信息保存至一个文件中。

2.增加笔记本电脑信息,在原有笔记本电脑产品信息文件的基础上增加新的笔记本电脑信息,并保存至原产品销售信息文件中。

3.删除笔记本电脑信息,提示用户输入要进行删除操作的产品名称和产品型号,如果在产品销售信息文件中有该信息存在,则将对应的笔记本电脑信息删除,否则输出提示信息,并提示用户选择是否继续进行删除操作。

4.修改笔记本电脑信息,提示用户输入要进行修改操作的产品名称和产品型号,如果在产品销售信息文件中有该息存在,则将提示用户输入要修改的选项,并将结果保存至原产品信息文件,并提示用户选择是否继续进行修改操作。

5.笔记本电脑销售管理,每完成一次销售,就按销售信息的要求输入各项数据,并修改相应的笔记本电脑产品销售信息文件(主要是修改其销售数量、库存数量)。

6.按不同条件进行查询操作,输出满足条件的笔记本电脑信息。

(1)输入产品名称,查找相应的笔记本电脑信息并输出。

(2)输入品牌名称,查找相应的笔记本电脑信息并输出。

7.输入品牌名称,在销售信息文件中统计其不同型号的销量,并输出销量最高的那个型号的笔记本电脑的信息。

源代码如下:#include <stdio.h>#include <time.h>#define N 1000 //N代表货物的最大种类struct goods{char name[10];//笔记本电脑名称int amount;//笔记本电脑数量int num;//笔记本电脑编号float price;//笔记本电脑价格}sp[N],sc[N];//定义全局变量int flag=1;FILE *fp;int i=0;int k=0;int b=0;chakan()//显示目前的库存{int zong=0;fp=fopen("chaoshi.txt","r");for(i=1;i<=(k+b);i++)fread(&sp[i],sizeof(struct goods),1,fp);fclose(fp);for(i=1;i<=k;i++){zong=zong+sp[i].num;}if(zong!=0){printf(" 目前库存情况为:型号数量价格编号\n");for(i=1;i<=(k+b);i++){printf(" %s %d %f %d\n",sp[i].name,sp[i].amount,sp[i].price,sp[i].num);}}else printf("\n #####目前库存为#####\n");}jinhuo()//进货模块{do{k++;i++;printf(" 请输入笔记本电脑的型号.数量.价格.标号(>0)例如:a 1 2.5 111\n\t\t\t");scanf("%s %d %f %d%c",sp[i].name,&sp[i].amount,&sp[i].price,&sp[i]. num);printf(" 是否继续,是(1),否(0)\n\t\t\t");scanf("%d",&flag);}while(flag!=0);fp=fopen("chaoshi.txt","w");for(i=1;i<=k;i++)fwrite(&sp[i],sizeof(struct goods),1,fp);fclose(fp);chakan();}xiaoshou()//销售模块{float m[100];int z=1;int j[100];int a[100];int g=0;int y=0;int h=0;float zong=0;fp=fopen("chaoshi.txt","r");for(i=1;i<=k;i++)fread(&sp[i],sizeof(struct goods),1,fp);fclose(fp);do{g++;y++;loop: printf(" 请输入笔记本电脑型号和数量,例如:(100 20)\n\t\t\t");scanf("%d %d",&j[y],&a[y]);for(z=1;z<=k;z++){if(j[y]==sp[z].num){h++;sp[z].amount=sp[z].amount-a[y];m[y]=(float)a[y]*sp[z].price;sc[y]=sp[z];}}if(h==0){printf(" 输入有误,请重新输入\n\t\t\t");goto loop;}fp=fopen("chaoshi.txt","wt");for(i=1;i<=k;i++)fwrite(&sp[i],sizeof(struct goods),1,fp);fclose(fp);printf(" 是否继续,是(1),否(0)\n\t\t\t");scanf("%d",&flag);}while(flag!=0);printf("\n############################################\n");printf(" 编号型号单价数量总计\n");for(y=1;y<=g;y++){printf(" %4d%10s%8.2f%6d%13.2f\n",sc[y].num,sc[ y].name,sc[y].price,a[y],m[y]);zong=zong+m[y];}printf(" 您此次一共消费%f 元,欢迎您下次光临\n",zong);shijian();}zengjia()//增加笔记本电脑数量模块{float m;int z=1;int j[100],a[100];int g=0;int y=0;int zong=0;int h=0;fp=fopen("chaoshi.txt","r");for(i=1;i<=k;i++)fread(&sp[i],sizeof(struct goods),1,fp);fclose(fp);do{g++;y++;loop: printf(" 请输入笔记本电脑编号和数量,例如:(100 20)\n\t\t\t");scanf("%d %d",&j[y],&a[y]);for(z=1;z<=k;z++){if(j[y]==sp[z].num){h++;sp[z].amount=sp[z].amount+a[y];m=a[y]*sp[z].price;sc[y]=sp[z];}}if(h==0){printf(" 输入有误,请重新输入\n\t\t\t");goto loop;}fp=fopen("chaoshi.txt","wt");for(i=1;i<=k;i++)fwrite(&sp[i],sizeof(struct goods),1,fp);fclose(fp);printf(" 是否继续,是(1),否(0)\n\t\t\t");scanf("%d",&flag);}while(flag!=0);chakan();}shanchu()//删除笔记本电脑模块{int z;int j[100],a[100];int c=0;int y=0;int h=0;do{c++;loop: printf(" 请输入您想删除的笔记本电脑编号\n\t\t\t");scanf("%d",&j[y]);for(z=1;z<=k;z++){h++;if(j[y]==sp[z].num)sp[z]=sp[z+1];}if(h==0){printf(" 输入有误,请重新输入\n\t\t\t");goto loop;}fp=fopen("chaoshi.txt","wt");for(i=1;i<=(k-1);i++)fwrite(&sp[i],sizeof(struct goods),1,fp);fclose(fp);printf(" 是否继续,是(1),否(0)\n\t\t\t");scanf("%d",&flag);}while(flag!=0);chakan();}shijian(){struct tm when;time_t now;time(&now);when=*localtime(&now);printf(" %s\n",asctime(&when));}main()//主函数{int choice;do{printf("\n\n\n ********笔记本电脑销售管理系统*******\n\n");printf(" 1.进货\n");printf(" 2.销售\n");printf(" 3.增加笔记本电脑数量\n");printf(" 4.删除笔记本电脑\n");printf(" 5.查看目前库存\n");printf(" 0.返回主菜单\n");printf(" 请选择您要进行的操作\n\t\t\t");scanf("%d",&choice);switch(choice){case 1:jinhuo();break;case 2:xiaoshou();break;case 3:zengjia();break;case 4:shanchu();break;case 5:chakan();break;case 0:break;default :printf(" 输入有误,请重新输入\n\t\t\t");}}while(choice!=0);}。