
图书信息管理系统设计1. [要求]图书信息包括: 登录号,图书名称,作者姓名,分类号,出版单位,出版时间,价格等. 设计图书信息管理系统,使其能够提供以下功能: (1)系统在菜单模式下工作(2)图书信息输入功能(3)图书信息浏览功能(4)图书信息查询功能(5)图书信息删除和修改功能2. [功能模块] 1.菜单模块开始书籍信息输入,书籍信息浏览,书籍信息查询,书籍信息删除,书籍信息修改,书籍信息添加,并开始输入a. 确定是否为N0〜6? Y根据a的值调用每个功能模块功能的主功能流程图. 结束“ 1”,主要功能: 建立菜单()功能提取主要功能,主要功能主要调用菜单()功能方便,简单. void main(){menu();} void menu(){int a;做{printf(“ ******赵毅****** \ n”); printf(“ \ n”); printf(“ ******中国地质大学****** \ n”); printf(“ \ n”); printf(“ \ n \ n \ n \ n \ n \ t \ t \ t \ t图书信息管理系统\ t \ t \ t \ t \ n”); printf(“ \ t \ t **************************** *************** ***** \ n“); printf(“ \ t \ t \ t1 ----------------图书信息输入\ n”); printf(“ \ t \ t \ t2 ----------------图书信息浏览\ n”); printf(“ \ t \ t \ t3 ----------------图书信息查询\ n”); printf(“ \ t \ t \ t4 ----------------图书删除信息\ n”); printf(“ \ t \ t \ t5 ----------------图书信息修改\ n”); printf(“ \ t \ t \ t6- ---------------添加图书信息\ n”); printf(“ \ t \ t \ t0 ----------------退出图书信息系统\ n”); printf(“ \ t \ t ******************************************** *** ***** \ n“); printf(“ \ t \ t请选择: ”); scanf(“%d”,&a);开关(a){情况1: 输入();打破;情况2: list();打破;情况3: 搜索();打破;情况4: del();打破;情况5: revise();打破;情况6: append();打破;情况0: 退出(0);默认值: printf(“ \ n错误的序列号\ n”);}} while(a!= 0);} [定义书信息结构] #include

“ 2”c语言设计图书管理系统,[数据存储]整个程序不使用保存功能,而是使用两个文件txt.txt \ tab.txt来输入和访问数据信息,并且书籍信息由该文件读写修改/删除等功能. (fopen fwrite fread写入和读取数据以进行存储). “ 3” [书籍信息输入]书籍信息输入输入书籍登录号输入书籍名称输入作者名称输入分类编号输入出版单位输入出版时间输入书籍价格开始输入要输入的书籍数量由用户Ni从1 N输入. 调用输入功能输入(i)以将信息保存在txt.txt文件中. 关闭输入信息的文件. 图书输入流程图[程序] void input()/ *定义输入函数* / {int i;预约一个;文件* fp; if((fp = fopen(“ txt.txt”,“ w”))== NULL){printf(“错误!\ n”); exit(0);}表示(i = 1; i <= N; i ++){printf(“ \ t请输入您需要的书籍的登录号: ”); scanf(“%ld”,&a.num); printf(“ \ t请输入标题: ”); scanf(“%s”,a.name); printf(“ \ t请输入作者姓名: ”); scanf(“%s”,a.writer); printf(“ \ t请输入分类号: ”); scanf(“%s”,a.sort); printf(“ \ t请输入发布单位: ”); scanf(“%s”,a.publisher); printf(“ \ t请输入发布时间: ”); scanf(“%ld”,&a.time); printf(“ \ t请输入该书的价格: ”); scanf(“%f”,&a.price); fwrite(&a,sizeof(书),1,fp); } fclose(fp);}《 4》【书籍信息[浏览]书籍信息浏览显示书籍注册号显示书籍名称显示作者名称显示类别编号显示出版单位显示出版时间显示书籍价格此模块的功能是显示全部输入书籍信息后,流程图如下: 打开所存信息的txt. .txt文件显示与书籍有关的信息. 按任意键返回主菜单. 图书浏览过程[程序]无效列表()/ *定义浏览功能* / {BOOK a;文件* fp;如果((fp = fopen(“ txt.txt”,“ r”))== NULL){printf(“错误!\ n”);退出(0);} printf(“ \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n登录号\ t书名\ t作者名\ t分类号\ t发布单位\ t发布时间\ t price \ n \ n“); while(fread(&a,sizeof(BOOK),1,fp)!= 0)printf(“ \ t%ld \ t%s \ t%s \ t%s \ t%s \ t%ld \ t% 3.2f \ n“,a.num,a.name,a.writer,a.sort,a.publisher,a.time,a.price); fclose(fp); printf(“ \ n \ t按任意键继续...”); getch();}《 5》【图书信息查询】【需求分析】用户需要查找图书,调用函数: 1.按书名搜索作者姓名2.按作者名搜索作者姓名,两种查询方式.

输入查询方法并输入功能选项. 1.首先打开源文件txt.txt,然后根据输入的书名执行for循环搜索. 如果找到,将显示书籍信息. 如果没有,“文件打开错误!”被陈列. 按任意键结束. 2.步骤与1.与作者姓名搜索相同. 按书名查询图书信息(1)按作者姓名查询图书信息(2)退出(0),然后开始键入a以确定a是否为1〜2? a = 1,然后调用search_by_name进行查询并按书名输入书名,如果有这本书,则输出书信息,如果没有,则输出文件打开错误! a = 0退出并返回主菜单a = 2,然后调用search_by_writer通过作者姓名查询输入作者姓名,如果有这本书,则输出此书信息,如果没有,则输出文件打开错误!查询函数流程图[程序] void search()/ *定义查询函数* / {int a; printf(“ \ t \ t ****************************** \ n”); printf(“开始查询\ n”); printf(“ \ t \ t \ t1 ---------------按书名查询\ n”); printf(“ \ t \ t \ t2 ------ ---------按作者姓名查询\ n”); printf(“ \ t \ t \ t0 --------------- exit \ n”); printf(“ \ t \ t ****************************** \ n”); printf(“ \ t \ t请选择您所需的查询方法: ”); scanf(“%d”,&a);切换(a){情况1: search_by_name();打破;情况2: search_by_writer();打破;情况0: 返回;}} void search_by_name()/ *通过书名定义查询* / {FILE * fp;我图书b [N];字符s2 [20]; fp = fopen(“ txt.txt”,“ r”); if(fp == NULL){printf(“文件打开错误!! \ n”); exit(0);} for(i = 0; i 删除功能,输入要删除的登录号,替换为b [k] = b [k + 1],完成删除功能,并结束图书信息删除过程[程序] void del()/ * define delete函数* / {FILE * fp;长书/ *按登录号查询* / int i = 0,k;图书b [N]; if((fp = fopen(“ txt.txt”,“ r”))== NULL){printf(“ error!\ n”); getch();出口(0);}对于(i = 0; i 【程序】void revise()/ *定义修改功能* / {int i,j,k;字符s1 [20];图书b [N];文件* fp,* fq; if((fq = fopen(“ tab.txt”,“ w”))== NULL){printf(“错误!”);退出(0);} if((fp = fopen(“ txt.txt”,“ r”))= = NULL){printf(“ error!”);退出(0);}表示(i = 0 ;! Feof(fp)&& i 

本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-208649-1.html
果断出击