求一个MFC图书信息mfc管理系统统!简单点的!

君,已阅读到文档的结尾了呢~~
完整的图书管理系统,图书管理系统,图书馆管理系统,美萍图书馆管理系统,java图书管理系统,图书借阅管理系统,图书管理系统设计,图书管理系统总结,图书管理系统e r图,图书管理系统类图
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
完整的图书管理系统
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口图书销售管理系统_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
图书销售管理系统
上传于||文档简介
&&图​书​销​售​管​理​系​统​ ​ ​V​B
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩22页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢很久以前写的一个 图书信息管理系统 - 开源中国社区
当前访客身份:游客 [
当前位置:
发布于 日 14时,
大一时的期末作业,是 图书信息管理系统,花了些时间撸了一把,就完成了。
主要是:链表+文件操作+输入输出。
网页上显示的制表符效果不好,你可以点击图中所示的地方,直接查看源代码。
代码片段(2)
1.&[图片] 截图.PNG&&&&
2.&[代码][C/C++]代码&&&&
/************************************************
选题5:图书信息管理系统设计
图书信息包括:登录号、书名、作者名、分类号、出版单
位、出版时间、价格等。试设计一图书信息管理系统,使
之能提供以下功能:
1、图书信息录入功能(图书信息用文件保存)
2、图书信息浏览功能
3、查询或排序功能:(至少一种查询方式)
A、按书名查询
B、按作者名查询
4、图书信息的删除与修改
*************************************************/
#include &stdio.h&
#include &stdlib.h&
#include &string.h&
#include &conio.h&
/****** 图书信息结构体 *******/
struct bookinfo
/* 登录号 */
char name[32]; /* 书名 */
char author[12]; /* 作者名 */
int class_ /* 分类号 */
char unit[256]; /* 出版单位 */
int time[3]; /* 出版时间 */
/* 价格 */
struct bookinfo * /* 下个图书的信息 */
/*****************************/
/* 功能:录入图书信息 */
void input(book **head)
book *s, *p;
if(*head == NULL) {/* 如果表头为空,先为它分配内存 */
*head = (book *)calloc(1, sizeof(book));
} else {/* 否则,就说明有内容,直接切换到尾结点 */
while(p-&next)
/* 为这个结点分配内存 */
s = (book *)calloc(1, sizeof(book));
printf("登录号:");
scanf("%d", &s-&id);
printf("书名:");
scanf("%s", s-&name);
printf("作者名:");
scanf("%s", s-&author);
printf("分类号:");
scanf("%d", &s-&class_id);
printf("出版单位:");
scanf("%s", s-&unit);
printf("出版时间[年 月 日]:");
scanf("%d %d %d", &s-&time[0], &s-&time[1], &s-&time[2]);
printf("价格:");
scanf("%f", &s-&price);
p-&next = /* 保存这个结点 */
p = p-& /* 切换至下个结点 */
p-&next = NULL;
printf("已经成功录入!\n");
int output(book *head)
p = head-&
if(head == NULL || head-&next == NULL)
printf("\t\t未记录图书信息!\n");
return -1;
system("cls");/* 清空屏幕内容 */
/* 打印表头 */
"┌───┬──────┬────┬───┬───────┬─────┬───┐\n"
│ %s │%s│
│ %s │ %s │\n"
"├───┼──────┼────┼───┼───────┼─────┼───┤\n"
,"登录号","书名","作者名","分类号","出版单位","出版时间","价格");
/* 打印表中间的内容 */
printf( "│%6d│%12s│%8s│%6d│%14s│%04d-%02d-%02d│%6.1f│\n",
p-&id, p-&name, p-&author, p-&class_id, p-&unit,
p-&time[0],p-&time[1],p-&time[2], p-&price
p = p-&/* 切换至下个结点 */
} while(p != NULL);
/* 打印表尾 */
printf( "└───┴──────┴────┴───┴───────┴─────┴───┘\n");
/* 功能:保存链表中的图书信息数据至文件 */
int save_data(book *head)
/* 以只“写”的方式打开book.data二进制文件 */
fp = fopen("book.data", "wb");
/* 如果文件打开失败,就返回-1 */
if(NULL == fp) {
return -1;
p = head-&
* 把这个结点的数据全部写入至文件内
* 由于next指针不需要写入至文件,因此,数据大小就是:
* sizeof(book)-sizeof(book*)
* 总数据大小减去指针的大小
fwrite(p, sizeof(book), 1, fp);
p = p-&/* 切换至下个结点 */
} while(p != NULL);
fclose(fp);/* 关闭文件 */
/* 功能:从文件读取图书信息数据 */
int read_data(book **head)
book *s, *p;
/* 以只“读”的方式打开book.data二进制文件 */
fp = fopen("book.data", "rb");
/* 如果文件打开失败,就返回-1 */
if(NULL == fp) {
*head = NULL;
return -1;
*head = (book *)calloc(1, sizeof(book));
while(!feof(fp)) {
/* 为下个结点分配内存空间 */
s = (book *)calloc(1, sizeof(book));
/* 从文件内读取数据保存至结点 */
n = fread(s, sizeof(book), 1, fp);
if(n & 1) {
p-&next= NULL; /* 最后一个结点为NULL */
p-&next = /* 保存下个结点 */
p = p-& /* 切换至下个结点 */
p-&next= NULL; /* 最后一个结点为NULL */
fclose(fp);/* 关闭文件 */
/* 功能:删除指定登录号的图书的信息 */
int delete(book *head)
char name[256];
int choice,
int found = 0;
book *p, *t;
/* 如果表头为空 */
if(head == NULL || head-&next == NULL) {
printf("没有记录学生信息!\n");
return -1;
"要删除图书信息,请选择删除方式:\n"
"[1]通过书名来删除\n"
"[2]通过登录号来删除\n"
while(1) {
scanf("%d", &choice);
if(choice & 0 && choice & 3) {
printf("选择错误,请重新选择:");
/* 接受用户输入的内容 */
if(choice == 1) {
printf("请输入书名:");
scanf("%s", name);
} else if(choice == 2) {
printf("请输入登录号:");
scanf("%d", &id);
while(p-&next) {
/* 根据用户输入的内容以及选择的方式,来查找匹配数据 */
if( choice == 1 && strcmp(p-&name, name) == 0
|| choice == 2 && p-&id == id) {
found = 1;
/* 如果没有找到 */
if( found != 1 ) {
printf("没有找到需删除信息的学生!\n");
return -1;
/* 打印表头 */
"┌───┬──────┬────┬───┬───────┬─────┬───┐\n"
│ %s │%s│
│ %s │ %s │\n"
"├───┼──────┼────┼───┼───────┼─────┼───┤\n"
,"登录号","书名","作者名","分类号","出版单位","出版时间","价格");
/* 打印中间内容 */
printf( "│%6d│%12s│%8s│%6d│%14s│%04d-%02d-%02d│%6.1f│\n",
p-&id, p-&name, p-&author, p-&class_id, p-&unit,
p-&time[0],p-&time[1],p-&time[2], p-&price
/* 打印表尾 */
printf( "└───┴──────┴────┴───┴───────┴─────┴───┘\n");
while(1) {
printf("真的需要删除?[1:是
2:否]:");
scanf("%d", &choice);
if(choice == 1) {
t-&next = p-&
free(p); /* 释放这个结点占用的内存 */
printf("已经删除!\n");
} else if(choice == 2) {
printf("任意键继续......");
/* 功能:查询图书信息 */
int find(book *head)
char author[256], name[256];
int found = 0;
book *p, *t;
if(head == NULL || head-&next == NULL) {
printf("没有记录学生信息!\n");
return -1;
"要查询图书信息,请选择查询方式:\n"
"[1]通过书名来查询\n"
"[2]通过作者名来查询\n"
while(1) {
scanf("%d", &choice);
if(choice & 0 && choice & 3) {
printf("选择错误,请重新选择:");
/* 接受用户输入的内容 */
if(choice == 1) {
printf("请输入书名:");
scanf("%s", name);
} else if(choice == 2) {
printf("请输入作者名:");
scanf("%s", author);
printf("查询结果:\n");
/* 打印表头 */
"┌───┬──────┬────┬───┬───────┬─────┬───┐\n"
│ %s │%s│
│ %s │ %s │\n"
"├───┼──────┼────┼───┼───────┼─────┼───┤\n"
,"登录号","书名","作者名","分类号","出版单位","出版时间","价格");
while(p-&next) {
/* 根据用户输入的内容以及选择的方式,来查找匹配数据 */
if( choice == 1 && strcmp(p-&name, name) == 0
|| choice == 2 && strcmp(p-&author, author) == 0) {
found = 1;
/* 打印中间内容 */
"│%6d│%12s│%8s│%6d│%14s│%04d-%02d-%02d│%6.1f│\n",
p-&id, p-&name, p-&author, p-&class_id, p-&unit,
p-&time[0],p-&time[1],p-&time[2], p-&price
/* 打印表尾 */
printf( "└───┴──────┴────┴───┴───────┴─────┴───┘\n");
/* 如果没有找到 */
if(found != 1) {
printf("没有找到符合要求的学生信息!\n");
return -1;
/* 功能:修改图书信息 */
int modify(book *head)
char name[256];
int choice,
int found = 0;
if(head == NULL || head-&next == NULL) {
printf("没有记录学生信息!\n");
return -1;
"要修改图书信息,请选择修改方式:\n"
"[1]通过书名来修改\n"
"[2]通过登录号来修改\n"
while(1) {
scanf("%d", &choice);
if(choice & 0 && choice & 3) {
printf("选择错误,请重新选择:");
/* 接受用户输入的内容 */
if(choice == 1) {
printf("请输入书名:");
scanf("%s", name);
} else if(choice == 2) {
printf("请输入登录号:");
scanf("%d", &id);
while(p-&next) {
/* 根据用户输入的内容以及选择的方式,来查找匹配数据 */
if( choice == 1 && strcmp(p-&name, name) == 0
|| choice == 2 && p-&id == id) {
found = 1;
if(found != 1) {
printf("没有找到符合要求的图书信息!\n");
return -1;
printf("登录号:");
scanf("%d", &p-&id);
printf("书名:");
scanf("%s", p-&name);
printf("作者名:");
scanf("%s", p-&author);
printf("分类号:");
scanf("%d", &p-&class_id);
printf("出版单位:");
scanf("%s", p-&unit);
printf("出版时间[年 月 日]:");
scanf("%d %d %d", &p-&time[0], &p-&time[1], &p-&time[2]);
printf("价格:");
scanf("%f", &p-&price);
printf("已经修改!");
int main(void)
book *head = NULL;
read_data(&head);/* 读取数据 */
while(1) {
system("cls");/* 清空屏幕内容 */
"*********************************\n\n"
"*\t图书信息管理系统\t*\n"
"*\t\t\t\t*\n"
"*\t1 --- 录入图书信息\t*\n"
"*\t2 --- 查询图书信息\t*\n"
"*\t3 --- 删除图书信息\t*\n"
"*\t4 --- 修改图书信息\t*\n"
"*\t5 --- 输出全部图书信息\t*\n"
"*\t0 --- 退出并保存数据\t*\n"
"*********************************\n\n"
"请输入选项&0-5&:"
scanf("%d", &choice);
if(choice == 0) {
switch(choice) {
case 1 : input(&head); getch();
case 2 : find(head); getch();
case 3 : delete(head); getch();
case 4 : modify(head); getch();
case 5 : output(head); getch();
save_data(head);
开源中国-程序员在线工具:
2楼:梅晓冬 发表于
176行intdelete(book *head)
这个& 好像有问题
3楼:灼眼的超哥 发表于
引用来自“梅晓冬”的评论176行intdelete(book *head)
这个& 好像有问题
嗯,与C++的关键字delete重名,文件后缀名为.c,不将它作为C++代码编译就行了。
4楼:梅晓冬 发表于
引用来自“LC-SOFT”的评论引用来自“梅晓冬”的评论176行intdelete(book *head)
这个& 好像有问题
嗯,与C++的关键字delete重名,文件后缀名为.c,不将它作为C++代码编译就行了。哦,厉害。
5楼:YoKay 发表于
开始直接选5会死掉
6楼:灼眼的超哥 发表于
引用来自“YoKay”的评论有bug。
开始直接选5会死掉目测把output函数中的p = head-& 移动至 if(head == NULL || head-&next == NULL)下面去即可,先判断有效性,再赋值。
7楼:临峰不畏 发表于
这让我想起了大学的课程设计
8楼:蔡文豪 发表于
这个怎么我参照用哪个文件方式存储不了数据呢
9楼:大哥哥写代码 发表于
确定要删除嘛? 1:是 &2否: 2
press any key...&
确定要删除嘛? 1:是 &2否: 2 press any key...&确定要删除嘛? 1:是 &2否: 2 press any key...&确定要删除嘛? 1:是 &2否: 2 这是不删除不准走的套路么...
10楼:客缘 发表于
你是我们学校的?学校现在要用java做,表示不会啊,寒假大作业
11楼:客缘 发表于
1、学生成绩管理系统
2、学生档案管理系统
3、网上商店信息管理系统
4、职工档案管理系统
5、职工工资信息管理系统
6、小型图书信息管理系统
7、超市商品信息管理系统
8、实验室设备信息管理系统
9、试题(选择题)信息管理系统
10、列车时刻表信息管理系统
每课题均须具有以下功能:
1、信息录入,包括记录的追加和插入;
2、信息删除信息删除;
3、信息修改;
4、信息排序和查询;
5、信息的保存和装载;
12楼:客缘 发表于
目测应该不是的,不同省
开源从代码分享开始
灼眼的超哥的其它代码MFC编一个个人的藏书管理系统需要学习哪些具体内容-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
MFC编一个个人的藏书管理系统需要学习哪些具体内容
来源:互联网 发表时间: 13:47:45 责任编辑:王亮字体:
为了帮助网友解决“MFC编一个个人的藏书管理系统需要学习哪些具体内容”相关的问题,中国学网通过互联网对“MFC编一个个人的藏书管理系统需要学习哪些具体内容”相关的解决方案进行了整理,用户详细问题包括:RT,我想知道:MFC编一个个人的藏书管理系统需要学习哪些具体内容,具体解决方案如下:解决方案1:
org看看下.org" target="_blank">www。
解决方案2:
这个没有人知道,知道的人可能没有时间上网
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 中国学网 版权所有
京ICP备号-1 京公网安备02号&&&&简易图书管理系统MFC
简易图书管理系统MFC
数据库系统原理课上的一个大程序。用MFC写的一个简单的图书管理系统,熟悉了数据库的使用。
若举报审核通过,可奖励20下载分
被举报人:
hongxinANDkevin
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
课程资源下载排行}

我要回帖

更多关于 mfc管理系统 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信