
C语言课程设计报告书信息管理系统设计1. [要求]书信息包括: 登录号,书名,作者姓名,分类号,出版单位,出版时间,价格等. 设计书信息管理系统这样就可以提供以下功能: (1)系统在菜单模式下工作(2)图书信息输入功能(3)图书信息浏览功能(4)图书信息查询功能(5)图书信息的删除和修改功能2. [功能模块] 1.菜单模块启动书籍信息输入,书籍信息浏览,书籍信息查询,书籍信息删除,书籍信息修改,书籍信息添加,开始输入a,并判断其是否为0〜6? Y根据a的值调用每个功能模块函数. N结束主功能流程图“ 1”. 主要功能: 建立menu()函数以提取主要功能. 为了方便和简单起见,主函数main调用menu()函数. 1C语言课程设计报告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); switch(a){case 1: input(); break;情况2: list(); break;情况3: search(); break;案例4: del(); break;情况5: revise(); break;情况6: append(); break;情况0: exit(0);默认值: printf(“ \ n序列号不正确\ n”);}} while(a!= 0); }【定义图书信息结构】2C语言课程设计报告#include

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

输入查询方法以输入功能选项. 1.首先打开源文件txt.txt,然后根据输入的书名执行for循环搜索. 如果找到,将显示书籍信息. 如果不是,则显示“文件打开错误!”. 按任意键结束. 2.步骤与1.与作者姓名搜索相同. 6C语言课程设计报告书名查询书名查询(1)作者姓名查询(2)退出(0)开始输入a,判断a是否为1〜2? a = 1,然后调用search_by_name来查询书名a = 0退出以返回主菜单a = 2,然后调用search_by_writer来查询作者名并输入书名,如果有该书,则输出书信息,如果没有,输出文件输入作者的名字,如果有这本书,则输出本书的信息,如果没有,则输出文件openopen错误!查询函数[程序]的流程图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);切换错误! 7C语言课程设计报告{案例1: search_by_name(); break;情况2: search_by_writer(); break; case 0: return;}} void search_by_name()/ *按书名定义查询* / {FILE * fp;我图书b [N];字符s2 [20]; fp = fopen(“ txt.txt”,“ r”); if(fp == NULL){printf(“文件打开错误!\ n”);退出(0);} for(i = 0; i 删除功能,输入要删除的登录号,替换为b [k] = b [k + 1],完成删除功能,结束图书信息删除过程,9C语言课程设计报告[程序] void del( )/ *定义删除功能* / {FILE * fp;长书/ *按登录号查询* / int i = 0,k;图书b [N]; if((fp = fopen(“ txt.txt”,“ r”))== NULL){printf(“ error!\ n”); getch(); exit(0);} for(i = 0; i 【程序】void revise()/ *定义修改函数* / {int i,j,k;字符s1 [20];图书b [N];文件* fp,* fq; if((fq = fopen(“ tab.txt”,“ w”))== NULL){printf(“错误!”); exit(0);} if((fp = fopen(“ txt.txt”,“ r”))= = NULL){printf(“ error!”); exit(0);} for(i = 0;!feof(fp)&& i 

本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-249605-1.html
美照再一发
小王子~
加油