开发一个简单版的图书检索系统,图书信息包括:编号、作者、书名、出版社、类型、价格、出版日期。

采用简单的c语言语法,结合结构体及自定义函数实现,让大一初学者也能够看懂。

该程序可实现功能(可根据个人需求拓展功能):

1.录入图书信息

2.根据书名查找

3.根据作者查找

4.输出图书信息

5.删除图书信息

6.修改图书信息等

以下为全部代码:

#include <stdio.h>
#include <string.h>
#include<stdlib.h>//system("cls")清屏;exit(0)表示正常退出当前进程;
#include<conio.h>
#define N 10
struct {char id[10];char name[50];char author[50];char fenlei[50];char publisher[50];char date[10];char price[10];
}book[N]={{"1001","追风筝的人","卡勒德·胡塞尼","文学类","作家出版社","200103","49.9元"},{"1002","群山回唱","卡勒德·胡塞尼","文学类","作家出版社","200103","49.9元"},{"1003","数学之美","吴军","科学类","人民邮电出版社","未知","39.8元" }};
int add(){int i,j,k=0;system("cls");for(i=0;i<N;i++){if(book[i].id[0]!='\0') k++; }printf("%d",k);printf("请输入登录号(四位数):");scanf("%s",book[k].id);getchar();printf("请输入图书名:");scanf("%s",book[k].name);getchar();printf("请输入图书作者:");scanf("%s",book[k].author);getchar();printf("请输入分类:");scanf("%s",book[k].fenlei);getchar();printf("请输入出版社:");scanf("%s",book[k].publisher);getchar();printf("请输入出版日期:");scanf("%s",book[k].date);getchar();printf("请输入价格:");scanf("%s",book[k].price);system("cls");printf("添加书籍成功!\n\n\n");
}
void shuming(){int i,k,j=0;char shu[20];system("cls");printf("请输入你要查询的书名:\n");scanf("%s",shu); for(i=0;i<N;i++){if(!strcmp (shu,book[i].name)){k=i;j=1;}} if(j==1){printf("\n您查询的信息为:\n\n");printf("编号:%s\n书名:%s\n作者:%s\n分类:%s\n出版社:%s\n出版日期:%s\n价格:%s\n\n",book[k].id,book[k].name,book[k].author,book[k].fenlei,book[k].publisher,book[k].date,book[k].price);}if(k==0) printf("查无此书\n\n");
}
void zuozhe(){int i,k,j=0;char zuozhe[20];system("cls");printf("请输入你要查询的作者名:\n");scanf("%s",zuozhe);getchar();for(i=0;i<N;i++){if(!strcmp (zuozhe,book[i].author)){k=i;j=1;}} if(j==1){printf("\n您查询的信息为:\n\n");printf("编号:%s\n书名:%s\n作者:%s\n分类:%s\n出版社:%s\n出版日期:%s\n价格:%s\n\n",book[k].id,book[k].name,book[k].author,book[k].fenlei,book[k].publisher,book[k].date,book[k].price);}else printf("查无此书\n\n");
}
int shanchu(){int a,i;system("cls");printf("请输入你要删除的书的序号:\n");scanf("%d",&a);getchar();for(i=a-1;i<N-1;i++){strcpy(book[i].id,book[i+1].id);strcpy(book[i].name,book[i+1].name);strcpy(book[i].author,book[i+1].author);strcpy(book[i].fenlei,book[i+1].fenlei);strcpy(book[i].publisher,book[i+1].publisher);strcpy(book[i].date,book[i+1].date);strcpy(book[i].price,book[i+1].price);}printf("删除成功!\n\n");
}
int xiugai(){int a,b;system("cls");printf("请输入你要修改的书的编号:\n");scanf("%d",&a);getchar();printf("%s %s %s %s %s %s %s\n\n",book[a-1].id,book[a-1].name,book[a-1].author,book[a-1].fenlei,book[a-1].publisher,book[a-1].date,book[a-1].price);printf("输入要修改的项目:\n1.登录号 2.书名 3.作者 4.分类 5.出版社 6.出版日期 7.价格\n\n");scanf("%d",&b);printf("将其修改为:\n");if(b==1) scanf("%s",book[a-1].id);else if(b==2) scanf("%s",book[a-1].name);else if(b==3) scanf("%s",book[a-1].author);else if(b==4) scanf("%s",book[a-1].fenlei);else if(b==5) scanf("%s",book[a-1].publisher);else if(b==6) scanf("%s",book[a-1].date);else if(b==7) scanf("%s",book[a-1].price);   system("cls");printf("修改成功!!!\n\n");
}
int shuchu(){int i;system("cls");printf("编号\t 书名\t\t作者\t\t分类\t出版社\t\t出版日期\t价格\n\n");for(i=0;i<N;i++){printf("%-8s %-12s %-16s %-9s %-15s %-13s %-12s\n",book[i].id,book[i].name,book[i].author,book[i].fenlei,book[i].publisher,book[i].date,book[i].price);}
}
int main(){int a=1;char ch;while(a){printf("*******************************欢迎进入图书管理系统****************************\n\n");printf("请输入你的操作:\n");printf("1.录入图书信息\n2.根据书名查询图书\n3.根据作者查询图书\n4.删除图书信息\n5.修改图书信息\n6.输出图书信息\n7.退出该系统\n");ch=getch();if(ch=='1') add();else if(ch=='2') shuming();else if(ch=='3') zuozhe();else if(ch=='4') shanchu();else if(ch=='5') xiugai();else if(ch=='6') shuchu();else if(ch=='7') exit(0);}return 0;
}

c语言之简单版的图书检索系统相关推荐

  1. C语言实现简单版Linux的cp命令

    C语言实现简单版的Linux的cp命令 前言: ​ 这是我的第一篇CSDN文章,写的不够好的地方有请各路大神指正.本人也是接触代码时间很短,在这里希望把自己学习到的知识写成一些有用的代码.后面有空的话 ...

  2. C语言编程图书销售系统,简单的书店图书销售系统求指点

    已结贴√ 问题点数:18 回复次数:1 简单的书店图书销售系统求指点 1. 功能(需求)分析 书店为了能实现日常的经营,经常涉及到到事物及应该具有的功能是:图书入库(进书采购时).图书销售.查看图书的 ...

  3. mysql简易购物车系统_基于PHP+Mysql简单实现了图书购物车系统的实例详解

    基于PHP+Mysql简单实现了图书购物车系统的实例详解,购物车,这是,页面,简单,图书 基于PHP+Mysql简单实现了图书购物车系统的实例详解 易采站长站,站长之家为您整理了基于PHP+Mysql ...

  4. 仿图书检索系统第二弹jQuery(页面功能)

    个人博客 https://blog.fmujie.cn/ 仿图书检索系统第二弹 主要应用jQuery 主要是用jQuery来调控多数量的信息输入检索框,~哎简单点说就是实时检测input状态~,检索检 ...

  5. 大家都看得见学计算机的决定,卢须振二丫-图书检索系统.PDF

    卢须振二丫-图书检索系统 1 墓碑里的歌声 /秦广泉 9 我们的天空 /卢须振 18 视频抓图 /卢须振 22 二 丫 /冯 燕 25 六月的歌词 /韦文君 37 桥 /韦文君 65 黑白灰 /徐 燕 ...

  6. c语言编写图书检索系统,求C语言编写图书管理系统

    答案:#include #include #include #include #include using namespace std; const   int   Maxb=10000;   //最 ...

  7. 用c语言编写简单的餐厅点餐系统(带后台)

    这应该是比较简单的c语言程序了,因为学校c语言结课结的早,我当时才学到结构体指针,所以我就把我当时能运用的知识点全用在这个程序上了.虽说这个程序对当时的我来说是天花板,但是当我继续学习,我逐渐发现这个 ...

  8. 火车票售票系统C语言大作业,基于C语言实现简单的12306火车售票系统

    程序设计要求用C语言写一个简单的火车售票系统,主要实现的功能为: 录入班次信息 浏览班次信息 按班次号查询 按终点站查询 按余票数量排序保存 售票 退票 更新班次信息 退出系统 所有的班次信息保存在n ...

  9. pthread售票多窗口共同C语言,基于C语言实现简单的12306火车售票系统

    程序设计要求用C语言写一个简单的火车售票系统,主要实现的功能为: 录入班次信息 浏览班次信息 按班次号查询 按终点站查询 按余票数量排序保存 售票 退票 更新班次信息 退出系统 所有的班次信息保存在n ...

最新文章

  1. 在 Ubuntu Linux 下搜索文件和文件内容
  2. 有关Non-cacheable,,Cacheable, non-shareable,inner-shareable,outer-shareable的理解
  3. VTK:相互作用之StyleSwitch
  4. android黑色半透明dialog背景,Android开发中Dialog半透明背景消失
  5. 【OpenCV】OpenCV函数精讲之 -- argc 和argv参数
  6. djanjo 使用a标签跳转_djangoGETPOST用法以及点击a标签和form表单跳转的类型取参等...
  7. java tmp 目录_Tmp目录丢失引发Java进程异常
  8. Android studio 设置函数功能悬浮提示(鼠标放到上班提示参数和功能)
  9. 你们制作微信表情包都用了哪些软件?当然必备这3款
  10. open drain和push pull
  11. 走,去出海,一起“Copy to World” | 36氪出海行业报告
  12. Point Attention Network for Semantic Segmentation of 3D Point Clouds 论文解析
  13. SPA项目开发(CRUD表单验证)
  14. 黑苹果无法连接wifi
  15. Windows进程小结
  16. 计算机英语输入法怎么,电脑为什么输入法总是英文怎么办
  17. 多巴胺所表达的prediction error信号
  18. 天猫精灵 python_GitHub - zhjc1124/tmallgenius: 天猫精灵打卡
  19. 软件测试类工具大全2009版
  20. 华硕x450jn拆机_笔电升级提速季丨华硕X450JN拆机升级影驰ONE120 SSD

热门文章

  1. Android手机有哪学好用的epub阅读器app
  2. bip39英文单词列表_快速使用语言工程构建瑞典的bip39单词表
  3. Linux下的粘滞位详解
  4. java安装 错误1704_java - 从Eclipse内部启动Tomcat Mongrel插件时发生致命错误 - 堆栈内存溢出...
  5. 地图下面的标尺是什么意思_机油标尺怎么看图解,汽车机油标尺正常位置示意图...
  6. 如何删除金山毒霸卸载后的残余文件
  7. 无效回表谁的锅?存储引擎:这事儿不赖我
  8. 在linux下安装配置rabbitMQ详细教程
  9. [附源码]计算机毕业设计JAVA超市收银系统论文
  10. SQL Server链接服务器的使用