1、西安邮电大学高级语言课程设计报告题 目: 超市管理系统院系名称: 理学院专业名称: 应用物理学班 级: 1301 学生姓名: 王松学号(8 位): 07132022指导教师: 王西龙设计起止时间:2014 年 06 月 19 日2014 年 06 月 27 日1:程序模型2:原函数概况1:创建函数void start(); /*启动界面*/void input(); /*商品数据信息输入函数 */void change(); /*商品数据信息修改函数*/void dele(); /*给定指定商品名称,删除商品信息*/void output(); /*商品信息输出 */void search()
2、; /*商品信息查找*/void mima();/*密码程序*/void colour();/颜色选择void huanying();2:商品信息录入input()3:商品信息的修改Change()4:商品信息的删除Dele()5:商品信息的查询Seaerch()6:系统颜色选择Colour()7:退出系统3:详细设计过程1:结构体变量的定义struct MarketGoods /*存数商品信息的结构体*/ char goods_id30; /*商品编号*/ char goods_name30; /*商品名称*/double goods_price; /*商品价格*/double goods_
3、discount;/*商品折扣*/int goods_amount;/*商品总数目*/int goods_remain;/*商品剩余数目 */goodsCOUNT;int count=0; /*全局变量,用于保存实际上有多少个商品*/2:欢迎界面void huanying()printf(“t333333333333333333333333333333n“);printf(“t3 欢迎使用 3n“);printf(“t3 3n“);printf(“t3 3n“);printf(“t3 超市管理系统 3n“);printf(“t3 3n“);printf(“t3 3n“);printf(“t3
4、444444 3n“);printf(“t3 3n“);printf(“t3 555555555 3n“);printf(“t3 3n“);printf(“t3333333333333333333333333333333n“);3:密码登陆void mima()/ char pass6=1,2,3,4,5,6;/*假设密码长度是 6*/ char pass=“123456“;/*假设密码长度是 6*/ char str6,ch;int i=0;int flag=0;printf(“ 请输入密码:“); fflush(stdin);for(i=0;i“);scanf(“%d“,switch(a)
5、case 1:system(“color 40“); break;case 2:system(“color 70“); break;case 3:system(“color 04“); break;case 4:system(“color 21“); break;case 5:system(“color 65“); break;case 6:system(“color la“); break;default:printf(“nntttt 输入无效“);getch();colour();start();10:商品信息输出void output() /*数据输出*/ FILE *fp;int i,
6、m=0;fp=fopen(“e:/student.txt“,“rt“);while(fread(fclose(fp);printf(“ 编号 名称 价格 折扣 总数目 剩余数目 n“);for(i=0;i #include #include #include #define COUNT 30 /*声明商品的种类为 30 中*/#define N 30void start(); /*启动界面*/void input(); /*商品数据信息输入函数 */void change(); /*商品数据信息修改函数 */void dele(); /*给定指定商品名称,删除商品信息*/void output
7、(); /*商品信息输出 */void search(); /*商品信息查找*/void mima();/*密码程序*/void colour();/颜色选择void huanying();void paixu();struct MarketGoods /*存数商品信息的结构体 */ char goods_id30; /*商品编号*/ char goods_name30; /*商品名称*/double goods_price; /*商品价格*/double goods_discount;/*商品折扣*/int goods_amount;/*商品总数目*/int goods_remain;/*商
8、品剩余数目*/goodsCOUNT;int count=0; /*全局变量,用于保存实际上有多少个商品 */void main() /*主函数*/ huanying();mima();start(); void start() /*启动菜单 */int chi; printf(“ 超市商品管理系统 n“);printf(“ *n“); printf(“ *n“); printf(“ 1.商品信息录入:n“);printf(“ 2.商品信息修改:n“); printf(“ 3.商品信息删除:n“); printf(“ 4.商品信息查找:n“); printf(“ 5.系统颜色选择:n“); pr
9、intf(“ 6.商品信息输出 :n“); printf(“ 0.退出程序n“);printf(“ *n“);printf(“ *n“); printf(“ 输入你的选择: “); scanf(“%d“, /*根据你的选择执行相应的函数*/if(chi=1) input(); else if(chi=2) change();else if(chi=3) dele();else if(chi=4) search(); else if(chi=5) colour();else if(chi=6) output();else if(chi=0) printf(“你已经退出超市商品管理系统!谢谢您的使
10、用,再见n“); exit(0);elseprintf(“ You Enter The Choice Is Not valid ! n“);getch();system(“cls“);start();void huanying()printf(“t333333333333333333333333333333n“);printf(“t3 欢迎使用 3n“);printf(“t3 3n“);printf(“t3 3n“);printf(“t3 超市管理系统 3n“);printf(“t3 3n“);printf(“t3 3n“);printf(“t3 444444 3n“);printf(“t3
11、3n“);printf(“t3 555555555 3n“);printf(“t3 3n“);printf(“t3333333333333333333333333333333n“);void mima()/ char pass6=1,2,3,4,5,6;/*假设密码长度是 6*/ char pass=“123456“;/*假设密码长度是 6*/ char str6,ch;int i=0;int flag=0;printf(“ 请输入密码:“); fflush(stdin);for(i=0;i6;i+) ch=getch(); /*读取字符,不显示*/stri=ch;putchar(*); fo
12、r(i=0;i6;i+)if(stri!=passi) flag=1;break;if(flag)printf(“n 密码错误,登录失败!请重新登录 n“);mima();else printf(“n 登录成功n“);getch();system(“cls“);start();void input() /*数据录入*/FILE *fp;char flag20;fp=fopen(“e:/student.txt“,“wt“);doprintf(“请输入你的商品信息 :n“); /*录入商品的信息 */ printf(“商品编号 :“); scanf(“%s“,goodscount.goods_id
13、); printf(“商品名字 :“); scanf(“%s“,goodscount.goods_name); printf(“商品价格 :“); scanf(“%lf“, printf(“商品折扣 :“); scanf(“%lf“, printf(“商品总数目 :“); scanf(“%d“, printf(“商品剩余数目 :“); scanf(“%d“, count+; /*存数的商品数加一 */ printf(“是否继续输入数据 y 是 n 否 : “); /*是否还想继续输入数据*/ scanf(“%s“,flag); while(strcmp(flag,“y“)=0|strcmp(f
14、lag,“Y“)=0);fwrite(fclose(fp);output(); /*调用显示商品数据*/getch();system(“cls“);start();void paixu()FILE *fp;int m=0;int u,j,t;double dN+1;fp=fopen(“e:/student.txt“,“rt“);while(fread(fclose(fp);dN+1=goodscount.goods_price;for(u=1;uN;u+)for(j=u+1;j=N;j+)if(dudj)t=du;du=dj;dj=t;printf(“商品信息:n“);printf(“ 编号
15、名称 价格 折扣 总数目 剩余数目 n“);for(u=1;u=N;u+)printf(“%4d“,du);void change() /*数据修改*/FILE *fp;int i,m=0;char ch20,a20;fp=fopen(“e:/student.txt“,“rt“);while(fread(fclose(fp);printf(“nyou sure want change goodsInfor y/n): “); /*根据商品的 id 来修改数据*/ scanf(“%s“,ch); if(strcmp(ch,“y“)=0|strcmp(ch,“Y“)=0) printf(“nent
16、er you want change goods_id:“); scanf(“%s“,a); for(i=0;icount;i+) if(strcmp(goodsi.goods_id,a)=0) printf(“nyou sure want change goods name(y/n): “); scanf(“%s“,ch); if(strcmp(ch,“y“)=0|strcmp(ch,“Y“)=0) printf(“nname:“);scanf(“%s“,goodsi.goods_name); printf(“nyou sure want change goods price(y/n): “
17、); scanf(“%s“,ch); if(strcmp(ch,“y“)=0|strcmp(ch,“Y“)=0) printf(“nprice“);scanf(“%lf“, printf(“nyou sure want goods discount(y/n): “); scanf(“%s“,ch); if(strcmp(ch,“y“)=0|strcmp(ch,“Y“)=0) printf(“ndiscount“); scanf(“%lf“, printf(“nyou sure want goods amount(y/n): “); scanf(“%s“,ch); if(strcmp(ch,“y
18、“)=0|strcmp(ch,“Y“)=0) printf(“namount“);scanf(“%d“,printf(“nyou sure want goods remain(y/n): “); scanf(“%s“,ch); if(strcmp(ch,“y“)=0|strcmp(ch,“Y“)=0) printf(“nremain“); scanf(“%d“, fwrite(fclose(fp);output();getch();system(“cls“);start();void dele() /*数据删除*/FILE *fp;int i,m=0,j;char ch20,c20;fp=fopen(“e:/student.txt“,“rt“);while(fread(m+;fclose(fp);printf(“nenter you want delete name :n“); /*根据商品的名称来删除数据*/ printf(“name:“); scanf(“%s“,c); for(i=0;icount;i+) if(strcmp(c,goodsi.goods_name)=0) break; /*找到,即跳出循环*/