商品订购系统设计完整代码

  • 格式:doc
  • 大小:113.50 KB
  • 文档页数:18

. 资料. #include #include #include #include #include

int bgnumber = 023; //客户号 int inumber = 0; //商品量的统计 int ibuy = 0; //订单的统计

void secondmain(); //管理维护子菜单 void jianpanload(); //输入商品 void scanproduct(); //浏览商品 void searchproduct(); //搜索商品 void dinggou(); //订购商品 void lookdinggou(); //查询订单 void addproduct(); //增加商品 void deleteproduct(); //删除商品 void saveproduct(); //保存商品 void savedinggou(); //保存订单 void wenbenload(); //从文本导入商品

struct product { char name[30]; //商品名 int number; //货号 char vender[30]; //厂家 char filed[100]; //产地 int stock; //存量 double unvalent; //单价 }; struct product a[100];

struct dinggou { int bgname; //货号 int bmany; //订购量 . 资料. int btime; //日期时间 char bname[100]; //客户名 char baddress[100]; //客户地址 int bnumber; //客户号 }; struct dinggou b[100];

int main(void) {

int i; wenbenload();

do { system("cls"); printf("\n\n\n\n\n\n"); printf("**************************欢迎使用商品订购系统v1.0******************************\n"); printf(" 作者: 计科1102 姚茂源\n"); printf(" ┏━━━━━━━━━━━━━━━━━━━┓\n"); printf(" ┃ 1.浏览商品信息 ┃\n"); printf(" ┃ 2.订购商品 ┃\n"); printf(" ┃ 3.订单查询 ┃\n"); printf(" ┃ 4.搜索商品 ┃\n"); printf(" ┃ 5.管理菜单 ┃\n"); printf(" ┃ 0.退出系统 ┃\n"); printf(" ┗━━━━━━━━━━━━━━━━━━━┛\n"); printf("********************************************************************************\n");

printf("\n\n\t\t请输入你的操作(0~5): "); scanf("%d",&i); switch(i) { case 1: system("cls"); scanproduct(); break; . 资料. case 2: system("cls"); dinggou(); break; case 3: system("cls"); lookdinggou(); break; case 4: searchproduct(); break; case 5: secondmain(); break;

case 0: //退出系统的界面 system("cls"); printf("\n\n\n\n\n\n\n\n"); printf("\n\n\t\t\t欢迎使用本系统\n\n\n\n\n\t\t\t欢迎再次使用\n"); exit(0); //exit用于在程序运行的过程中随时结束程序 } }while(1);

return 0; }

//浏览商品 void scanproduct() { int i; system("cls"); printf("\t\t\t\t\t商品信息列表\n"); for (i = 0; i < inumber; i++) { printf("名称 : %s\n",a[i].name); printf("货号 : %d\n",a[i].number); printf("厂家 : %s\n",a[i].vender); printf("产地 : %s\n",a[i].filed); . 资料. printf("存量 : %d\n",a[i].stock); printf("单价 : %.2lf\n\n\n",a[i].unvalent); } printf("\n\n\n\n\n\n\t\t\t"); printf("返回主菜单\n"); printf("\t\t\t"); system("pause"); return; }

//商品的订购 void dinggou() { char ch; int i, j, t, c = 1; int n = 1; int m = 0;

do { switch(n) { case 1: system("cls"); printf("\t\t\t\t商品信息列表\n"); //显示商品的名称、货号信息,以便于订购 printf("名称\t 货号\t 库存\n"); for (i = 0; i < inumber; i++) {

printf("%s\t %d\t %d\n\n\n",a[i].name,a[i].number,a[i].stock); } printf("\n\n\n");

printf("\t\t\t\t商品订单\n"); printf("\n\t\t\t请输入你的第%d个订单信息:\n",m + 1); printf("\n\t\t\t货号:"); fflush(stdin); scanf("%d",&b[ibuy].bgname); . 资料. //检测是否含有此商品 j = 1; for (i = 0; i < inumber; i++) { if(a[i].number == b[ibuy].bgname) { j = 0; t = i; } } //若有商品继续购买项目 if(j == 0) { printf("\n\t\t\t订购量:"); fflush(stdin); scanf("%d",&b[ibuy].bmany); if (a[t].stock >= b[ibuy].bmany) { a[t].stock = a[t].stock - b[ibuy].bmany; //顾客购买后商品的库存计算 printf("\n\t\t\t日期时间:"); fflush(stdin); scanf("%d",&b[ibuy].btime); printf("\n\t\t\t客户名:"); fflush(stdin); gets(b[ibuy].bname); printf("\n\t\t\t客户地址:"); fflush(stdin); gets(b[ibuy].baddress); printf("\n\t\t\t客户号:"); b[ibuy].bnumber = bgnumber; printf("%d\n",b[ibuy].bnumber); bgnumber++; ibuy++; m++; printf("\n\n\n\t\t\t\t"); system("pause"); } else { . 资料. printf("\n\n\t\t\t订购数目超出库存\n"); printf("\t\t\t"); system("pause"); }

} //若没有商品的提示及操作 else { printf("\n\n\t\t\t查无此货\n");

printf("\t\t\t"); system("pause"); }

case 2: printf("是否继续输入订购?(Y/N)"); fflush(stdin); scanf("%c",&ch); if(ch == 'N' || ch == 'n') { c = 0; break; } else if(ch == 'Y' || ch == 'y') { c = 0; n = 1; break; } else if(ch != 'n' || ch != 'N' || ch != 'Y' || ch != 'y') { n = 0; c = 1; break; }

case 0: if(c == 1)