版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言课程设计报告55071-13陈杰指导老师:刘文中C语言程序设计编程实践是学习C语言程序设计的一重要环节,上机实习和课程设计是
提高同学们程序设计能力的有效途径,能够使同学们初步掌握程序设计的基本方法和调试技能。学校安排上机时间有限,老师也只能教给我们一些方法,而我们自己需要投入很大的时间1而我们自己需要投入很大的时间1、设计“图书信息管理系统”要求:图书信息包括:登录号,书名,作者名,分类号,出版单位,出版时间,价格等。(1)(2)(3)(4)(5)使之提供以下功能:系统以菜单方式工作。图书信息录入功能。(图书信息用文件保存)。图书信息浏览功能。图书信息查询功能。图书信息的删除和修改。2、分析:根据题目要求,应当把图书信息用结构体形式输入,再定义一个全局变量和文件指针进行整个程序的运行,然后把图书信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;在程序中需实现图书信息录入,浏览,查询,删除和修改等功能的操作,所以需要建立相应的模块来实现;另外还需提供键盘式选择菜3单、实现总功体能,设在运计行时:达到所要目的根据题目要求,可以将系统分为六个模块:
1)管理员登录系统模块。2)菜单选择模块。3)图书信息录入功能模块4)图书信息浏览功能。5)图书信息查询功能。6)图书信息的删除和修改。第1页头函数名:#include<stdio.h>#include<stdlib.h>价格等***/#include<string.h>/*********图书信息结构体*********//***包括登录号,书名,作者名,分类号,出版单位,出版时间价格等***/{intnum;******************************************************登录号charbname[20];***************************************书名charwname[10];***************************************作者名■■r*41afV1Icharclanum[14];***************************************分类号charpubcom[10];***************************************出版单位charpubtime[10];***************************************出版时间floatprice;*********************************************价格};一管理员登录系统模块:(1)来到图书信息管理系统页面voidindex()注释:运行时直接进入这个页面{注释:运行时直接进入这个页面charinput;printf("\n\n\t\t\t*****************************\n");printf("\t\t\t图书信息管理系统5");printf("\t\t\t*****************************\n\n\n");
\n");printf("\n");printf("\t<按任意键进入>\n\t");input=getchar();第2页}(2)管理员登陆进入功能菜单页面FILE*fp;structmanagepswd;if((fp=fopen("password.txt","r"))==NULL){printf("\n\n\n\tCannotopenfile!\n\t");}else{do{printf("\n\n\t请输入管理员帐号:");scanf("%s",name);printf("\n\n\t请输入管理员密码:");scanf("%s",password);fp=fopen("password.txt","r");fread(&pswd,sizeof(structmanage),1,fp);fclose(fp);w=strcmp(pswd.manage_name,name);k=strcmp(pswd.password,password);adm_servelist();}while(w!=0||k!=0);
adm_servelist();}}(3)来到功能菜单页面第3页voidadm_servelist(){voidbook_add();voidbook_view();voidchange();voiddel();voidbook_search();voidlogin();注释:注释:菜单列出的服务种类从1,2,3,4,5,6所对应的功能进行选择intin;charinput;do{printf("\n\n\n\t--欢迎使用信息管理系统--");printf("\n\n\tl.图书信息录A\n");printf("\t2.图书信息浏览5");printf("\t3.图书信息查询\n");printf("\t4.图书信息删除5");printf("\t5.图书信息修改5");printf("\t6.退出管理模式5");printf("\n\t请选择服务种类:”);scanf("%d",&in);if(in!=l&&in!=2&&in!=3&&in!=4&&in!=5&&in!=6){printf("\n\t没有这项服务~\n");printf("\t按任意键重新选择”);input=getchar();}}while(in!=l&&in!=2&&in!=3&&in!=4&&in!=5&&in!=6);switch(in)注释:注释:选择自己所需要后摁下数字键则则进入此功能页面casel:book_add();break;case2:book_view();break;case3:book_search();break;case4:del();break;case5:change();break;case6:login();break;}}(3)图书信息录入功能模块voidbook_add(){第4页voidadm_servelist();voidbook_add();inti=0,j;输入的图书信息是通过文件进行保存的FILE*fp;输入的图书信息是通过文件进行保存的charinput;注释structbookinfbooks;structbookinfbook_taxis[30];printf("\n\n\n\t---请输入图书信息---\n\n");printf("\t登录号:”);scanf("%d",&books.num);printf("\n\t书名:");scanf("%s",books.bname);printf("\n\t作者名:");scanf("%s",books.wname);printf("\n\t分类号:");scanf("%s",books.clanum);printf("\n\t出版单位:");scanf("%s",books.pubcom);printf("\n\t出版时间:”);scanf("%s",books.pubtime);printf("\n\t价格:");scanf("%f",&books.price);if((fp=fopen("book.txt","r"))!=NULL){do{fread(&book_taxis[i],sizeof(structbookinf),1,fp);i=i+1;}while(!feof(fp));fclose(fp);for(j=0;j<=i;j++)if(books.num==book_taxis[j].num){printf("\n\n\n\t对不起,这个编号已经使用过了~\n");printf("\t按任意键返回管理菜单~");input=getchar();adm_servelist();break;}}if((fp=fopen("book.txt","r"))==NULL){第5页fp=fopen("book.txt","w");}else{fclose(fp);fp=fopen("book.txt","a");}fwrite(&books,sizeof(structbookinf),1,fp);fclose(fp);printf("\n\n\n\t信息输入完毕~按任意键继续5");input=getchar();adm_servelist();}(4)图书信息浏览功能模块voidbook_view(){voidadm_servelist();voidbook_view();intinp,i=0,n=0;FILE*fp;charinput;structbookinfbookview[20];if((fp=fopen("book.txt","r"))==NULL){printf("\n\n\n\t数据尚未初始化~~\n\n\t请在管理菜单中增加图书信息—\n");printf("\n\tv按任意键返回管理菜单>\n\t");input=getchar();adm_servelist();}else{do{fread(&bookview[i],sizeof(structbookinf),1,fp);i=i+1;}while(!feof(fp));fclose(fp);do{printf("\n\t共有%d条记录"j-1);printf("\n\n\t登录号:%d\n",bookview[n]・num);第6页printf("\n\t书名:%s\n",bookview[n]・bname);printf("\n\t作者名:%s\n",bookview[n]・wname);printf("\n\t分类号:%s\n",bookview[n].clanum);printf("\n\t出版单位:%s\n",bookview[n]・pubcom);printf("\n\t出版时间:%s\n",bookview[n].pubtime);printf("\n\t价格:%f\n",bookview[n].price);printf(”\n\n\t1・上一页\t2•下一页\t3・回目录\n");printf("\n\t请选择:");scanf("%d",&inp);switch(inp){case1:{if(n==0){printf("\n\t已到达首页\n\t按任意键重新选择”);input=getchar();}elsen=n-1;break;}case2:{if(n==i-2){printf("\n\t已到达最末页\n\t按任意键重新选择”);input=getchar();}elsen=n+1;break;}case3:{adm_servelist();break;}default:{printf("\n\t没有这项服务\n\t按任意键重新选择”);input=getchar();}}}while(inp!=3);第7页}}(5)图书信息修改与删除功能模块修改:voidchange(intx){intinp,i=0,j;voidbook_search();FILE*fp,*fp1;charinput;structbookinfbooks,book_taxis[20];do{printf("\n\n\n\t注意:您确定要修改该记录吗?\n");printf("\n\t1•是\t2.否\n");printf("\n\t请输入:");scanf("%d",&inp);if(inp!=1&&inp!=2){printf("\n\t对不起~没有这项服务~\n");printf("\t按任意键重新选择\n\t");input=getchar();}}while(inp!=1&&inp!=2);if(inp==2)book_search();if(inp==1){printf("\n\n\n\t---请输入图书信息---\n\n");printf("\t登录号:”);scanf("%d",&books.num);printf("\n\t书名:");scanf("%s",books.bname);printf("\n\t作者名:");scanf("%s",books.wname);printf("\n\t分类号:");scanf("%s",books.clanum);printf("\n\t出版单位:");scanf("%s",books.pubcom);printf("\n\t出版时间:”);scanf("%s",books.pubtime);第8页printf("\n\t价格:”);scanf("%f",&books.price);if((fp1=fopen("book.txt","r"))!=NULL){do{fread(&book_taxis[i],sizeof(structbookinf),1,fp1);i=i+1;}while(!feof(fp1));fclose(fp1);for(j=0;j<x;j++)if(books.num==book_taxis[j].num){printf("\n\n\n\t对不起,这个编号已经使用过了~\n");printf("\t按任意键返回管理菜单~");printf("0");input=getchar();book_search();break;}for(j=x+1;j<i-2;j++)if(books.num==book_taxis[j].num){printf("\n\n\n\t对不起,这个编号已经使用过了~\n");printf("1");printf("\t按任意键返回管理菜单~");input=getchar();book_search();break;}}book_taxis[x]=books;fp=fopen("book.txt","w");for(j=0;j<i-1;j++)fwrite(&book_taxis[j],sizeof(structbookinf),1,fp);fclose(fp);printf("\n\n\t信息修改完成!按任意键返回”);input=getchar();book_search();第9页}}S删除:voiddel(inty){charinput;FILE*fp;intinp,i=0,j;structbookinfbook_taxis[20];voidbook_search();voidadm_servelist();do{printf("\n\n\n\t注意:您确定要删除该记录吗?\n");printf("\n\t1•是\t2.否\n");printf("\n\t请输入:");scanf("%d",&inp);if(inp!=1&&inp!=2){printf("\n\t对不起~没有这项服务~\n");printf("\t按任意键重新选择\n\t");input=getchar();}}while(inp!=1&&inp!=2);if(inp==2)book_search();if(inp==1){if((fp=fopen("book・txt","r"))!=NULL){do{fread(&book_taxis[i],sizeof(structbookinf),1,fp);i=i+1;}while(!feof(fp));fclose(fp);}if(i>2){fp=fopen("book・txt","w");第10页for(j=0;j<y;j++)fwrite(&book_taxis[j],sizeof(structbookinf),1,fp);fclose(fp);fp=fopen("book.txt","a");for(j=y+1;j<i-1;j++)fwrite(&book_taxis[j],sizeof(structbookinf),1,fp);fclose(fp);}else{remove("book.txt");}printf("\n\n\t记录已删除!\n\n\t按任意键返回\n\t");input=getchar();adm_servelist();}}(6)图书信息查询功能模块voidbook_search(){voidadm_servelist();voidid_search();voidwr_search();voidbn_search();charinput;FILE*fp;intinp;if((fp=fopen("book.txt","r"))==NULL){printf("\n\n\n\t数据尚未初始化~~\n\n\t请在管理菜单中增加图书信息—\n");printf("\n\tv按任意键返回管理菜单>\n\t");input=getchar();adm_servelist();}els
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年个人与建筑公司借款合同范本汇编4篇
- 二零二五年度企业员工关系管理与冲突预防协议范本3篇
- 2025年度新型环保材料租赁经营合同模板4篇
- 二零二五年度商业活动场地借用及宣传合同2篇
- 二零二五年度体育产业普通合伙企业合作协议范本4篇
- 2025年度5G产业投资理财协议
- 2025年三方知识产权转让还款协议书范本及内容说明3篇
- 个性化定制2024年版民间资金借贷协议范本版B版
- 2025年酒店住宿赔偿协议范本
- 个人股份转让协议书
- 2024-2030年中国海泡石产业运行形势及投资规模研究报告
- 动物医学类专业生涯发展展示
- 2024年同等学力申硕英语考试真题
- 消除“艾梅乙”医疗歧视-从我做起
- 非遗文化走进数字展厅+大数据与互联网系创业计划书
- 2024山西省文化旅游投资控股集团有限公司招聘笔试参考题库附带答案详解
- 科普知识进社区活动总结与反思
- 加油站廉洁培训课件
- 现金日记账模板(带公式)
- 消化内科专科监测指标汇总分析
- 混凝土结构工程施工质量验收规范
评论
0/150
提交评论