1、C语言课程设计商品销售信息管理系统 #include#include#include#includestruct product /定义商品数据结构 int num; /商品编号 char productname20; /商品名称 float price; /商品售价 char place30; /商品产地 int storage; /商品库存 struct product *next; *head,*p1,*p2; /定义主结构体数组和备用结构体数组及指针struct time /定义时间结构体int year;int month;int day;struct sell /定义销售数据结构
2、int ID; /顾客代码 char customername20; /顾客姓名 int num; /商品编号 int count; /销售数量 char date10; /日期 struct sell * next1; *head1; /定义头指针head,缓冲指针p1,以及尾指针p2/*函数申明*/void Enter_productmessage(); /导入商品信息void Creat(); /输入销售记录void Search_num(); /按编号查询销售历史void Search_customername(); /按顾客姓名查询购买历史void Printf_customerna
3、me(); /显示顾客信息void Search_date(); /计算时间段内销售总额void Save_product(); /保存销售信息void Save_customername(); /保存顾客信息void Exit(); /退出程序/*主菜单*/int select()int c; printf(tt*欢迎使用商品销售管理程序*n);printf(tt T1123-5班 胡 军 一分耕耘 一分收获 n);printf(n-n);printf(n);printf(tt*n); printf(tt*欢迎使用商品销售管理系统*n); printf(tt* *n); printf(tt*
4、 1:导入商品信息 *n); printf(tt* 2:输入销售记录 *n); printf(tt* 3:按编号查询销售历史 *n); printf(tt* 4: 按顾客姓名查询购买历史 *n); printf(tt* 5:计算时段内各销售总额 *n); printf(tt* 6:显示顾客信息 *n); printf(tt* 7:保存销售信息 *n); printf(tt* 8:保存顾客信息 *n);printf(tt* 0:退出 *n); printf(tt*n); printf(n-n); printf(tt请输入您的选择(08的整数): );scanf(%d,&c);return c;/
5、*主函数*/int main()for(;)switch(select()case 1:system(cls);Enter_productmessage();break;case 2:system(cls);Creat();break;case 3:system(cls);Search_num();break;case 4:system(cls);Search_customername();break;case 5:system(cls);Search_date();break;case 6:system(cls);Printf_customername();break;case 7:syst
6、em(cls);Save_product();break;case 8:system(cls);Save_customername();break; case 0:system(cls);Exit();break;default : system(cls); printf(nnnnnn);printf(tt*n); printf(tt* 输入错误!请重新输入您的选择(08的整数) *n);printf(tt* 请按Enter键返回! *n);printf(tt*n); getchar();getchar();system(cls);return 0;/*/int judgech(char *a
7、) /判断是否为汉字int i,flag;for(i=0;ai!=0;i+)if(ai=0)flag=0;break;else flag=1; return flag;int judgedate(char date10) /判断日期是否合法int i,year,month,day,s1=0; /日期格式输入正确则s1=1,否则s1=0for(i=0;i0&day0&day0&day0&daynext=p1;p1-next=NULL;p2=p1;fscanf(fp,%d%s%f%s%d,&p2-num,p2-productname,&p2-price,p2-place,&p2-storage);
8、 while(k=1)if(p2-num10|p2-numnum);k=1;else k=0;while(j=1)if(judgech(p2-productname)=0)printf(tt第%d个商品名称错误!请重新输入(汉字):,i+1); rewind(stdin);scanf(%s,p2-productname);j=1;else j=0;while(o=1)if(p2-price0):,i+1); rewind(stdin); scanf(%f,&p2-price);o=1; else o=0;while(c=1)if(judgech(p2-place)=0) printf(tt第%
9、d个商品产地格式错误!请重新输入(汉字):,i+1); rewind(stdin);scanf(%s,p2-place);c=0; else c=0;while(v=1)if(p2-storage!=1000) printf(t*n); printf(tt第%d个商品数量错误!请输入1000:,i+1); rewind(stdin);scanf(%d,&p2-storage);v=1;else v=0;printf(t%-12d%-15s %-15.2f%-15s%-12dn,p2-num,p2-productname,p2-price,p2-place,p2-storage); fclose
10、(fp); void comp() FILE *fp;int i=0,n,k=1,m=1,c=1,l=1,d=1;char filename20,a;printf(t请输入商品信息保存路径:);rewind(stdin);gets(filename);p1=p2=head=(struct product*)malloc(sizeof(struct product);if(fp=fopen(filename,a+)=NULL) printf(tt*n); printf(tt* 不能打开文件!请检查文件路径! *n); printf(tt*n); getchar(); system(cls); E
11、nter_productmessage(); printf(nnn); printf(tt*n);printf(tt* 若输入路径与从文件导入商品信息路径相同!*n); printf(tt* 并已导入十个商品信息,请不要再导入! *n); printf(tt* 注意商品编号不要和已导入的编码重复! *n);printf(tt*n);printf(nnn);getchar();system(cls);printf(t已从文件导入的个数和要输入的个数和不超过十!nn);printf(t请输入要导入的销售记录个数:);scanf(%d,&n);if(n0)dop1=(struct product*)
12、malloc(sizeof(struct product); p2-next=p1;p1-next=NULL; p2=p1; printf(*商品信息*n); printf( 编号(整数) 名称(汉字) 价格(数字) 产地(汉字) 库存数量n); scanf(%d%s%f%s%d,&p2-num,p2-productname,&p2-price,p2-place,&p2-storage); while(k=1)if(p2-num10|p2-numnum);k=1;else k=0;while(m=1)if(judgech(p2-productname)=0)printf(tt商品名称错误!请重
13、新输入(汉字):); rewind(stdin);scanf(%s,p2-productname);m=1;else m=0;while(l=1)if(p2-price0):); rewind(stdin); scanf(%f,&p2-price);l=1; else l=0;while(c=1)if(judgech(p2-place)=0) printf(tt商品产地格式错误!请重新输入(汉字):); rewind(stdin);scanf(%s,p2-place);c=1; else c=0;while(d=1)if(p2-storage!=1000) printf(t*n); print
14、f(tt 商品数量错误!请输入1000:); rewind(stdin);scanf(%d,&p2-storage);d=1;else d=0;p2=head-next;fprintf(fp,n%-6d%-6s%-6.2f%-6s%-6dn,p2-num,p2-productname,p2-price,p2-place,p2-storage);printf(n%-6d%-6s%-6.2f%-6s%-6dn,p2-num,p2-productname,p2-price,p2-place,p2-storage); printf(tt是否继续输入信息(Y/N)?n);getchar(); a=getchar();while(a=Y|a=y);fclose(fp); /关闭文件夹if(n=0) printf(tt不从键盘输入入信息!);getchar(); getchar();system(cls); fclose(fp); /关闭文件夹
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2