版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电子科技大学成都学院C语言编程实践课程设计报告小组: 学号: 院系: 专业: 年 月 日图书管理系统作者:袁琦工具:Visual Studio 2012、MySQL Server 5.5、Navicat Premium语言:C、SQL程序功能介绍: 图书信息录入功能 图书信息浏览功能 图书信息查询功能 查询方式 按书名查询 按作者名查询 浏览全部信息 修改图书信息并保存 系统功能结构图 删除图书信息程序设计:1. 编程环境配置: 需先安装 Visual studio 2012、MySQL、Navicat Premium 把mysql.h、libmysql.lib添加到vs项目中再把libmys
2、ql.lib放入项目资源文件夹中,把libmysql.lib复制到Windowssystem32和WindowsSysWOW64中 用Navicat Premium 建立好数据库新建一个名为bookinfos的数据库,字符集:utf-8排序方式:utf8_general_ci新建一个名为book的表格,其中id为主键,且自动递增函数关系图2. 程序代码:#include<stdio.h>#include<stdlib.h>#include<string.h>#include<WinSock2.h>#include<mysql.h>#d
3、efine ADD 1#define DELETE 2#define BROWSE 3#define UPDATE 4#define CLOSE 5#define LENGTH 6MYSQL mysql, *sock;/声明MySQL句柄/*函数声明*/void Connector(char*,int);void mainMenu();void addMenu();void searchMenu();void update_bookinfo_menu();void search_by_bookName();void search_by_author();void add_bookinfo();
4、void delete_bookinfo();void update_bookName();void update_author();void update_publisher();void update_time();void update_price();/*程序入口*/void main()mainMenu();/主菜单/Connector(i_query);/*主菜单*/void mainMenu()int order;/用户输入指令printf("tt=nn");printf("tttt欢迎进入图书管理系统nn");printf("t
5、tt 1.图书录入t");printf("t2.图书查询nn");printf("tttt3.退出图书管理系统nn");printf("tt=n");printf("nn请输入指令所对应的序号后按下回车:");scanf("%d",&order);switch (order)case 1 :addMenu();/进入图书录入子菜单break;case 2 :searchMenu();/进入图书查询子菜单break;case 3 :Connector("Close&qu
6、ot;,CLOSE);exit(1);break;default:printf("输入指令有误!n");system("pause");system("cls");mainMenu();break;/*图书录入子菜单*/void addMenu()int order;system("cls");printf("tt=nn");printf("tttt 0.返回主菜单nn");printf("ttt 1.录入图书信息t");printf("t2.删
7、除图书信息nn");printf("tttt 3.修改图书信息nn");printf("tt=n");printf("请输入指令序号:n");scanf("%d",&order);switch (order)case 0:system("cls");mainMenu();break;case 1:add_bookinfo();break;case 2:delete_bookinfo();break;case 3:system("cls");update_bo
8、okinfo_menu();default:printf("输入指令有误!n");system("pause");system("cls");addMenu();break;/*修改图书信息子菜单*/void update_bookinfo_menu()int order;printf("tt=nn");printf("tttt 0.返回上级菜单nn");printf("tt 1.修改书名t 2.修改作者t3.修改出版社nn");printf("ttt 4.修改出版
9、时间t5.修改价格nn");printf("tt=nn");printf("请输入指令序号:n");scanf("%d",&order);switch (order)case 0:system("cls");addMenu();break;case 1:update_bookName();break;case 2:update_author();break;case 3:update_publisher();break;case 4:update_time();break;case 5:updat
10、e_price();break;default:printf("输入指令有误!n");system("pause");system("cls");update_bookinfo_menu();break;/*修改书名*/void update_bookName()char i_query200 = "update book set bookName= ""char i_query_140 = "" where id = ""char ID11;char bookNa
11、me50;printf("请输入图书ID:n");scanf("%s",&ID);printf("请输入图书名称:");scanf("%s",&bookName);Connector(strcat(i_query,strcat(bookName,strcat(i_query_1,strcat(ID,"""),UPDATE);/*修改作者*/void update_author()char i_query200 = "update book set author
12、= ""char i_query_140 = "" where id = ""char ID11;char author50 ;printf("请输入图书ID:n");scanf("%s",&ID);printf("请输入作者名称:");scanf("%s",&author);Connector(strcat(i_query,strcat(author,strcat(i_query_1,strcat(ID,"""
13、;),UPDATE);/*修改出版社*/void update_publisher()char i_query200 = "update book set publisher= ""char i_query_140 = "" where id = ""char ID11;char publisher50 ;printf("请输入图书ID:n");scanf("%s",&ID);printf("请输入出版社:");scanf("%s",&a
14、mp;publisher);Connector(strcat(i_query,strcat(publisher,strcat(i_query_1,strcat(ID,"""),UPDATE);/*修改时间*/void update_time()char i_query200 = "update book set time= ""char i_query_140 = "" where id = ""char ID11;char time50 ;printf("请输入图书ID:n"
15、;);scanf("%s",&ID);printf("请输入出版时间:");scanf("%s",&time);Connector(strcat(i_query,strcat(time,strcat(i_query_1,strcat(ID,"""),UPDATE);/*修改价格*/void update_price()char i_query200 = "update book set price= ""char i_query_140 = "&qu
16、ot; where id = ""char ID11;char price50 ;printf("请输入图书ID:n");scanf("%s",&ID);printf("请输入图书价格:");scanf("%s",&price);Connector(strcat(i_query,strcat(price,strcat(i_query_1,strcat(ID,"""),UPDATE);/*添加图书信息*/void add_bookinfo()char
17、i_query300 = "insert into book(bookName,author,publisher,time,price) values(""char bookName200;char author100;char publisher100;char time40;char price10;printf("请输入书名:n");scanf("%s",bookName);printf("请输入作者:n");scanf("%s",author);printf("请输入
18、出版社:n");scanf("%s",publisher);printf("请输入出版时间:n");scanf("%s",time);printf("请输入价格:n");scanf("%s",price);Connector(strcat(strcat(strcat(strcat(strcat(strcat(strcat(strcat(strcat(strcat(i_query,bookName),"",""),author),"&qu
19、ot;,""),publisher),"",""),time),"",""),price),"")"),ADD);/*删除图书信息*/void delete_bookinfo()char i_query100 = "delete from book where id = '"char input10;printf("请输入要删除图书的ID:n");scanf("%s",&input);Con
20、nector(strcat(strcat(i_query,input),"'"),DELETE);/*图书查询子菜单*/void searchMenu()int order;/用户输入指令system("cls");printf("tt=nn");printf("tttt 0.返回主菜单nn");printf("ttt 1.按书名查询t");printf("t2.按作者查询nn");printf("tttt3.浏览多有图书的信息nn");print
21、f("tt=n");printf("请输入指令序号:");scanf("%d",&order);switch (order)case 0: system("cls");mainMenu();break;case 1:search_by_bookName();break;case 2:search_by_author();break;case 3: Connector("select * from book",BROWSE);break;default:printf("输入指令有
22、误!n");system("pause");system("cls");searchMenu();break;/*按书名查找*/void search_by_bookName()char i_query50 = "select * from book where bookName = ""char input20;char quotation = """printf("请输入书名:");scanf("%s",&input);strcat(
23、i_query,input);strcat(i_query, quotation);Connector(i_query,BROWSE);/*按作者名查找*/void search_by_author()char i_qurey50 = "select * from book where author = ""char input20;char quotation = """printf("请输入作者名:");scanf("%s",&input);strcat(i_qurey, input
24、);strcat(i_qurey, quotation);Connector(i_qurey, BROWSE);/*连接数据库函数*/void Connector(char *i_query, int function)const char *host = "127.0.0.1"const char *user = "root"const char *password = "paw8zmre"const char *db = "bookinfos"unsigned int port = 3306;const cha
25、r *unix_socket = NULL;unsigned long client_flag = 0;MYSQL_RES *result;MYSQL_ROW row;mysql_init(&mysql);sock = mysql_real_connect(&mysql, host, user, password, db, port, unix_socket, client_flag);mysql_set_character_set(&mysql, "GBK");result = mysql_store_result(&mysql);switch (function)/*添加图书信息*/case ADD:mysql_query(sock,i_qu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026重庆长江轴承股份有限公司招聘122人备考题库带答案详解(b卷)
- 2026广东广州民间金融街管理委员会招聘辅助人员1人备考题库附完整答案详解【网校专用】
- 2026中共江西省委党校(江西行政学院)高层次人才招聘37人备考题库附答案详解(培优b卷)
- 2026浙江嘉兴市平湖市教育局校园招聘教师52人备考题库(第三批)重点附答案详解
- 2026广东广州市天河区东风实验小学招聘小学高年段语文教师备考题库【重点】附答案详解
- 2026广东深圳市宝安区中英公学高薪诚聘特色普通高中各科教师备考题库含答案详解(预热题)
- 2026山东东营锦苑大地幼儿园招聘幼儿园教师1人备考题库附完整答案详解【夺冠系列】
- 2026贵州省旅游产业发展集团有限公司招聘3人备考题库及参考答案详解(培优b卷)
- 2026安徽芜湖市第一人民医院第一次招聘劳务派遣人员16人备考题库附完整答案详解(网校专用)
- 2026河北保定市消防救援支队次政府专职消防员招录154人备考题库含完整答案详解(全优)
- 2026年宁夏石嘴山市单招职业适应性测试题库及一套答案详解
- 2026广东广州市黄埔区机关事务管理局招聘政府雇员3人笔试备考题库及答案解析
- 第4课 独立自主的和平外交 新教材八年级历史下册
- 2026年巡特辅警笔试题库及完整答案一套
- 中烟机械技术中心招聘笔试题库2026
- 2026届新高考语文三轮热点复习:作文分层追问展思路
- 大肠杆菌菌课件
- 2025-2026学年教科版(新教材)小学科学一年级下册教学计划及进度表
- 矿山运输车队运营管理制度
- 产品功能定义与拆解手册
- 2026年远程医疗监控系统实施方案
评论
0/150
提交评论