@SuHongjun
2020-06-15T09:41:34.000000Z
字数 5247
阅读 354
C语言 2020春季学期
封面和Logo各小组八仙过海、各显神通,加油,我看好你们 :)
/*###系统分析:- 书的信息:书号、书名、作者、出版日期、价格、捐赠人<会员号>、状态(借出、在馆、报废)- 会员信息:会员号、姓名、手机、email、QQ、微信, 可借数量(动态计算), 捐赠列表(动态查询),当前借阅列表(动态查询), 借阅历史(可选)- 捐赠信息(总捐赠列表):会员号 -- 书号,捐赠日期- 借阅信息(总借阅列表):会员号 -- 书号,借出日期,应还日期(假定可借60天,计算得到),还书日期上述信息的录入、保存、读取、查询显示、修改*/#include "stdio.h"#include "string.h"#define BOOK_FILE "E:\\Try\\C\\004\\综合设计\\books.dat"#define MEMBER_FILE "E:\\Try\\C\\004\\综合设计\\members.dat"#define JZ_LIST_FILE "E:\\Try\\C\\004\\综合设计\\jz_list.dat"#define JY_LIST_FILE "E:\\Try\\C\\004\\综合设计\\jy_list.dat"struct DATE{int year;int month;int day;};struct BOOK{char sh[30];char bookName[200];char author[200];struct DATE publishDate; //结构体嵌套float price;char hyh[30];int status; //0:在馆、1:借出、-1:报废};struct MEMBER{char hyh[30];char hyName[200];char cell[15];char email[100];char QQ[30];char wx[100];int kjsl;//捐赠列表(动态查询),???//当前借阅列表(动态查询) ????};struct JUAN_ZEN_INFO{char hyh[30];char sh[30];struct DATE jzDate;};struct JIE_YUE_INFO{char hyh[30];char sh[30];struct DATE jcDate;struct DATE yhDate;struct DATE hsDate;};//......................函数原型声明:.........................void InputMember();void SaveAll();void LoadAll();void DisplayMembers();void Welcome();int DisplayMainMenu();void ByeBye();int DisplayMemberMenu();//......................全局变量:...............................struct BOOK g_books[10000];struct MEMBER g_members[5000];int g_members_count;struct JUAN_ZEN_INFO g_jz_list[30000];struct JIE_YUE_INFO g_jy_list[1000000];//.........................................main(){int iMainMenu, iSubMenu_1;Welcome();LoadAll();do{iMainMenu = DisplayMainMenu();switch(iMainMenu){case 1:do{iSubMenu_1 = DisplayMemberMenu();switch(iSubMenu_1){case 1: DisplayMembers();break;case 2: InputMember();break;case 3: ;break;case 4: ;break;}}while(iSubMenu_1 != 9);break;case 2:;break;case 3:;break;case 4:;break;}}while(iMainMenu != 999);ByeBye();SaveAll();}void DisplayMembers(){int i;char jx = 'Y', buf[10];printf("\n会员信息:\n");printf("会员号\t\t姓名\t手机\t\temail\tQQ\t微信\t可借数量\n");printf("-----------------------------------------------------\n");for(i=0; i<5000;i++){if(strcmp(g_members[i].hyh, "")!=0)printf("%s\t%s\t%s\t%s\t%s\t%s\t%d\n",g_members[i].hyh,g_members[i].hyName,g_members[i].cell,g_members[i].email,g_members[i].QQ,g_members[i].wx,g_members[i].kjsl);elsebreak;}printf("-----------------------------------------------------\n");}int DisplayMemberMenu(){int iSel=0;char buf[100];printf("\n\t\t … 会员信息管理功能选择:…\n");printf("\t\t ------------------------------\n");printf("\t\t| |\n");printf("\t\t| 1.显示会员信息 |\n");printf("\t\t| |\n");printf("\t\t| 2.录入会员信息 |\n");printf("\t\t| |\n");printf("\t\t| 3.查询会员信息 |\n");printf("\t\t| |\n");printf("\t\t| 4.修改会员信息 |\n");printf("\t\t| |\n");printf("\t\t| ** 9. 退 出 ** |\n");printf("\t\t| |\n");printf("\t\t ------------------------------\n");printf("\t\t 请选择对应功能:");scanf("%d", &iSel);gets(buf);return iSel;}void ByeBye(){printf("\t欢迎下次使用!\t Bye bye!!\n");}int DisplayMainMenu(){int iSel=0;char buf[100];printf("\n\t\t ***** 主菜单 *****\n");printf("\t\t ==============================\n");printf("\t\t|| ||\n");printf("\t\t|| 1.会员信息管理 ||\n");printf("\t\t|| ||\n");printf("\t\t|| 2.书籍信息管理 ||\n");printf("\t\t|| ||\n");printf("\t\t|| 3.捐 赠 管 理 ||\n");printf("\t\t|| ||\n");printf("\t\t|| 4.借 阅 管 理 ||\n");printf("\t\t|| ||\n");printf("\t\t|| ** 999. 退 出 ** ||\n");printf("\t\t|| ||\n");printf("\t\t ==============================\n");printf("\t\t 请选择对应功能:");scanf("%d", &iSel);return iSel;}void Welcome(){printf("\t******************************************************\n");printf("\t******************************************************\n");printf("\t** **\n");printf("\t** **\n");printf("\t** 小书虫书友会管理系统 **\n");printf("\t** **\n");printf("\t** 开发人员: **\n");printf("\t** 张文定 13258479658 **\n");printf("\t** 李 明 13258479668 **\n");printf("\t** 赵志国 13258479688 **\n");printf("\t** **\n");printf("\t******************************************************\n");printf("\t******************************************************\n\n");}void LoadAll(){FILE *fp;fp = fopen(BOOK_FILE,"rb");if(fp !=NULL){fread(g_books,sizeof(struct BOOK),10000,fp);fclose(fp);}fp = fopen(MEMBER_FILE,"rb");if(fp !=NULL){fread(&g_members_count,sizeof(g_members_count),1,fp);fread(g_members,sizeof(struct MEMBER),5000,fp);fclose(fp);}fp = fopen(JZ_LIST_FILE,"rb");if(fp !=NULL){fread(g_jz_list,sizeof(struct JUAN_ZEN_INFO),30000,fp);fclose(fp);}fp = fopen(JY_LIST_FILE,"rb");if(fp !=NULL){fread(g_jy_list,sizeof(struct JIE_YUE_INFO),1000000,fp);fclose(fp);}}void SaveAll(){FILE *fp;fp = fopen(BOOK_FILE,"wb");if(fp !=NULL){fwrite(g_books,sizeof(struct BOOK),10000,fp);fclose(fp);}fp = fopen(MEMBER_FILE,"wb");if(fp !=NULL){fwrite(&g_members_count,sizeof(g_members_count),1,fp);fwrite(g_members,sizeof(struct MEMBER),5000,fp);fclose(fp);}fp = fopen(JZ_LIST_FILE,"wb");if(fp !=NULL){fwrite(g_jz_list,sizeof(struct JUAN_ZEN_INFO),30000,fp);fclose(fp);}fp = fopen(JY_LIST_FILE,"wb");if(fp !=NULL){fwrite(g_jy_list,sizeof(struct JIE_YUE_INFO),1000000,fp);fclose(fp);}}void InputMember(){int i;char jx = 'Y', buf[10];printf("请录入会员信息:\n");for(i=g_members_count; i<5000;i++){printf("会员号:");gets(g_members[i].hyh);printf("姓名:");gets(g_members[i].hyName);printf("手机:");gets(g_members[i].cell);printf("email:");gets(g_members[i].email);printf("QQ:");gets(g_members[i].QQ);printf("微信:");gets(g_members[i].wx);g_members[i].kjsl = -1;printf("是否继续录入?(y/n):");jx = getchar();if(jx != 'y' && jx != 'Y'){g_members_count = i + 1;break;}gets(buf);}}//.........???????