题目:杂志订阅管理系统使用计算机对一种杂志的订阅进行管理,该杂志最多订户不超过10人,每个订户的信息包括:姓名 性别 地址 电话号码 杂志单价 订阅数 订阅期限(至**年**月)。现要求用菜单选择并完成下述的功能:(1)增加新订户,既将订户的全部信息输入到文件中。(2)根据当天
题目:杂志订阅管理系统使用计算机对一种杂志的订阅进行管理,该杂志最多订户不超过10人,每个订户的信息包括:姓名 性别 地址 电话号码 杂志单价 订阅数 订阅期限(至**年**月)。现要求用菜单选择并完成下述的功能:(1)增加新订户,既将订户的全部信息输入到文件中。(2)根据当天的日期对订户文件进行查询,删除已到期的订户记录。(3)统计本期杂志订户数并打印运算结果:本期订户信息表订户名 订阅数 单价 金额李平 2 5.5 11.0黄海 1 5.5 5.5合计 3 1.0 16.5 程序已给出,只是有错误,请懂编程的人帮忙看看,万分感谢! #include#define max 20struct magazine{char name[11];char sex[6];char addr[11];char phone_number[12];char unit_price[5];char amount[4];char time_limit[11];}order[max];void save(int n);int load_record();void search();void printf_n(int n);void printf_one(int i);void input(int i);statitic();void add();void menu();main(){FILE *fp;fp=fopen("record.txt","w");/*在C:Documents and SettingsAdministrator里建立一个"record.txt"记事本*/fclose(fp);menu();}void menu(){ void clrscr();int w,n;do{clrscr();printf("
");printf(" * * * * * * * * * * * * * * * * * * * * * * * * *
");printf("
");printf("
");printf(" 欢迎来到杂志订阅系统!
");printf("
");printf("
");printf(" * * * * * * * * * * * * * * * * * * * * * * * * *
");printf("
*********************************************
");printf(" 1:add_new_subscriber
");printf(" 2:browse
");printf(" 3:statistic
");printf(" 4:exit
");printf(" *********************************************
");printf(" Choice your number(1-4):[ ]");scanf("%d",&n);if(n4) w=1;else w=0;}while (w==1);/***************选择功能****************/switch(n) { case 1:add();break; /*增加新订户记录*/ case 2:search();break; /*查找过期的订户记录并删除*/ case 3:statistic();break; /*统计*/ case 4:exit();break; /*退出*/ }}/*********************添加模块************************/void add(){int t,i,m;clrscr();t=load_record();printf("您需要添加多少用户的信息?
");printf("输入号码:[ ]");scanf("%d",&m);for(i=0;i
输入 %dth subscriber record.
",i 1);input(t i); /*调用输入函数*/}save(t m); /*调用保存函数 保存t m组数据*/clrscr(); /*******清屏*********/menu(); /*返回登陆界面*/}void input(int i){printf("请输入:
姓名 性别 地址 电话 杂志单价 数量 订阅期限
");scanf("%s%s%s%s%s%s%s",&order[i].name,&order[i].sex,&order[i].addr,&order[i].phone_number,&order[i].unit_price,&order[i].amount,&order[i].time_limit);}/**************************统计模块****************************/ statistic(){int t;t=load_record();printf("订阅者的数量[%d]",t);printf_n(t);printf("
按任意键返回...
");getch();menu();}void printf_one(int i) /*显示一个仪器记录的函数*/{printf("%-10s %-5s %-10s %-11s %-4s %-3s %-10s
",order[i].name,order[i].sex,order[i].addr,order[i].phone_number,order[i].unit_price,order[i].amount,&order[i].time_limit);}void printf_n(int n) /*显示n个仪器记录的函数*/{int j;clrscr(); /**********清屏************/printf("姓名 性别 地址 电话号码 价格 数量 时间期限
");for(j=0;j
按任意键继续 ..."); getch(); puts("
"); }printf_one(j); /*调用显示一个仪器记录的函数*/ }}/***************查询模块****************/void search(){FILE *fp;char date[11],str[2];int t,i,sum=0;t=load_record();clrscr();printf("请输入日期:[ ]");scanf("%s",date);printf("
");if((fp=fopen("record.txt","w"))==NULL)/*以只写方式打开*/ { printf("
无法打开文件
"); exit(0); } clrscr();printf("
"); for(i=0;i
"); printf_one(i); /**********把符合条件的记录显示出来*********/ printf("
记录已过期!"); printf("
你想要删除此条信息吗?('Y'or'N'):
展开
全部