怎样使用C++编写的一个图书馆系统源代码???

在网上找了一个图书馆系统的源代码,数据库,源代码,都有的,不知道怎样处理数据库和源代码,,我 没 进行任何处理,直接打开exe可执行文件,登陆账号,密码(初始的),结果显示:未发现数据库名称并且未指定默认驱动程序!怎么办啊,各位高手指点一下,拜托拜托啊(小弟积分不够,见谅了,以后一定补偿~~~)

第1个回答  推荐于2016-05-24
本人邮箱长期在线,有什么不懂得可直接询问。邮箱:wyw2010@tom.com
这是我以前做的课程设计,没有修改功能。修改很好做,我这还有一份学生管理信息的源代码,能实现上述全部功能。由于我现在正在帮客户做个系统,没时间来完善这个程序,希望你自己能够完善一下。
/*设计实现一个简单的图书管理系统,对图书馆的业务进行管理*/

////////////////////////////////////////////////
//内容:设计实现一个简单的图书管理系统,对图书馆的业务进行管理
//要求:用C语言及顺序结构来实现,系统具有如下功能
//1. 图书入库:图书数据包括图书书号,书名,作者,数量,单价等,一本书作为一个结点,
//以书号为关键字,按输入的顺序建立顺序表
//2.排序:以书号按升序进行排序(可以任选一种排序方法)
//3.查找:能按书名、书号进行查找(分别用顺序查找和折半查找方法)
//4.删除:从表中删除指定的图书
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
#define LIST_INIT_SIZE 50
#define LISTINCREMENT 10
typedef struct Book
{
int BookNum;/*图书书号*/
char BookName[50];/*图书书名*/
char BookWrite[50];/*图书作者*/
float BookPrice; /*图书价格*/
int numbers ; /*图书数量*/
}Book;
typedef struct Library_Data
{
Book *book;
int length;
int listsize;
int Num;
}Library_Data,*Lib_Data;
//显示指定的一条记录
void print(Book p)
{
printf("\n********************************************************************\n");
printf("图书书号 图书书名 图书作者 图书数量 图书单价(元)\n");
printf("--------------------------------------------------------------------\n");
printf("%-14d%-14s%-14s%-14d%-14f\n",p.BookNum,p.BookName,p.BookWrite,p.numbers,p.BookPrice);
printf("********************************************************************\n");
}
//查找函数
int find(Library_Data p,int Num,char s[20])
{
int i,low,mid,high;
if(Num==-1)
for(i=0;i<p.length;i++) /*顺序查找*/
{
if(strcmp(s,p.book[i].BookName)==0)
return i;
}
else if(strcmp(s,"")==0)
{
low=0;high=p.length;
while(low<=high) /*折半查找*/
{
mid=(low+high)/2;
if(Num==p.book[mid].BookNum) return mid;
else if(Num>p.book[mid].BookNum) low=mid+1;
else high=mid-1;
}
}
return -1;
}
//升序排序
Library_Data Sort_Book(Library_Data &p)
{
Book p0;
int i,j;
if(p.Num==0) return p;
for(i=0;i<p.length;i++)
{
for(j=i+1;j<p.length;j++)
{
if(p.book[i].BookNum>p.book[j].BookNum)
{
p0=p.book[i];
p.book[i]=p.book[j];
p.book[j]=p0;
}
}
}
return p;
}
//图书初始化
void Create_Data(Library_Data &p1)
{
int i=0;
Book *newbase;
system("cls");
printf("现在对图书进行初始化\n");
puts("***********************************");
p1.Num=0;p1.length=0;
p1.listsize=LIST_INIT_SIZE;
p1.book=(Book *)malloc(LIST_INIT_SIZE*sizeof(Book));
do
{

if(p1.length>p1.listsize)
{

newbase=(Book *)realloc(p1.book,(p1.listsize+LISTINCREMENT)*sizeof(Book));
if(!newbase) exit(0);
p1.book=newbase;
p1.listsize+=LISTINCREMENT;
}
printf("请输入图书书号:");
scanf("%d",&p1.book[i].BookNum);
printf("请输入图书书名:");
scanf("%s",&p1.book[i].BookName);
printf("输入图书作者: ");
scanf("%s",&p1.book[i].BookWrite);
printf("请输入图书数量:");
scanf("%d",&p1.book[i].numbers);
printf("请输入图书价格:");
scanf("%f",&p1.book[i].BookPrice);
p1.Num+=p1.book[i].numbers;i++;p1.length++;

printf("***********************************\n");
printf(" 按 n 退出,按别的继续。\n"); /*提示如何继续、退出*/
printf("***********************************\n");
}while(getch()!='n');
Sort_Book(p1);
}
//查找图书
int Find_Book(Library_Data p,int n)
{
char name[20]="";
int k,Num=-1;
if(p.Num==0)
{
system("cls");
printf("现无图书记录! ");
return 0;
}
else if(n==1)
{
system("cls"); /*清屏*/
printf("现在是对图书信息进行查找");
printf("\n*********************************************\n");
printf("请输入你要查找的图书书名:");
scanf("%s",name);
k=find(p,Num,name); /*调用find()查找函数*/
if(k!=-1) /*条件满足执行下面函数*/
print(p.book[k]);
else
printf("\n 没有找到你要找的图书信息.按任意键继续。");
}
else if(n==2)
{
system("cls"); /*清屏*/
printf("现在是对图书信息进行查找");
printf("\n*********************************************\n");
printf("请输入你要查找的图书书号:");
scanf("%d",&Num);
k=find(p,Num,name); /*调用find()查找函数*/
if(k!=-1) /*条件满足执行下面函数*/
print(p.book[k]);
else
printf("\n 没有找到你要找的图书信息.按任意键继续。");
}
else
printf("你的选择有误!");
return 1;
}
//插入图书
void add(Library_Data &p0)
{
int i,k,low,mid,high;
Book p1,*p2,*p3,*newbase;
system("cls");
if(p0.Num==0)
printf("图书信息表还没有初始化,需要对图书信息表进行初始化后才能进行插入。\n");
else
{
if(p0.length>=p0.listsize-1)
{
newbase=(Book *)realloc(p0.book,(p0.listsize+LISTINCREMENT)*sizeof(Book));
if(!newbase) exit(0);
p0.book=newbase;
p0.listsize+=LISTINCREMENT;
}
printf("请输入待插入图书信息:\n");
printf("*********************************************\n");
printf("请输入图书书号:");
scanf("%d",&p1.BookNum);
printf("*********************************************\n");
printf("请输入图书书名:");
scanf("%s",&p1.BookName);
printf("*********************************************\n");
printf("请输入图书作者:");
scanf("%s",&p1.BookWrite);
printf("*********************************************\n");
printf("请输入图书数量:");
scanf("%d",&p1.numbers);
printf("*********************************************\n");
printf("请输入图书价格:");
scanf("%f",&p1.BookPrice);
printf("*********************************************\n");
low=0;high=p0.length;
if(p1.BookNum<p0.book[0].BookNum)
{
for(p2=&p0.book[p0.length];p2>=&p0.book[0];p2--)
*(p2+1)=*p2;
p0.book[0]=p1;
p0.Num+=p1.numbers;p0.length++;
}
else if(p1.BookNum>p0.book[p0.length-1].BookNum)
{
p0.book[p0.length]=p1;
p0.Num+=p1.numbers;p0.length++;
}
else
{
for(i=0;i<p0.length;i++)
if(p1.BookNum>=p0.book[i].BookNum && p1.BookNum<p0.book[i+1].BookNum) break;
for(p2=&p0.book[p0.length];p2>&p0.book[i];p2--)
*(p2+1)=*p2;
p0.book[i+1]=p1;
p0.Num+=p1.numbers;p0.length++;
}

}
}
//删除图书
void Delete_Book(Library_Data &LD,int n)
{
system("cls");
char name[20]="";
char a;
int i=0,k=0,Num=-1;
Book *p1,*p2;
if(LD.Num==0)
printf("现无图书记录! ");
else
{
printf("进行图书信息删除");
printf("\n*********************************************\n");
if(n==1)
{
printf("请输入待删除图书书名:"); /*提示输入要删除的图书书名*/
scanf("%s",name);
printf("是否删除所有同名的图书?“y”是,其他键只删除第一个:");
if(getch()=='y') /*删除所有同名图书信息*/
{
for(i=0;i<LD.length;i++)
{
if(strcmp(name,LD.book[i].BookName)==0)
{
p2=&LD.book[LD.length-1];
LD.Num-=LD.book[i].numbers;
for(p1=&LD.book[i];p1<=p2;p1++)
*p1=*(p1+1);
LD.length--;k=1;i=-1;
}
}
if(k==0) printf("\n没有你要删除的记录\n");
else printf("\n所有图书名为%s的信息已被删除!\n",name); /*显示己被删除的信息*/
}
else
{

i=find(LD,Num,name);
if(i==-1) printf("\n没有你要删除的记录\n");
else /*删除第一本相同的图书信息*/
{
p2=&LD.book[LD.length-1];
LD.Num-=LD.book[i].numbers;
for(p1=&LD.book[i];p1<=p2;p1++)
*p1=*(p1+1);
printf("\n图书号为%s的信息已被删除!\n",name); /*显示己被删除的信息*/
LD.length--;

}
}
}
else if(n==2)
{
printf("请输入待删除图书书号:"); /*提示输入要删除的图书书号*/
scanf("%d",&Num);
i=find(LD,Num,name);
if(i==-1) printf("没有你要删除的记录\n");
else
{
p2=&LD.book[LD.length-1];
LD.Num-=LD.book[i].numbers;
for(p1=&LD.book[i];p1<=p2;p1++)
*p1=*(p1+1);
printf("图书号为%d的信息已被删除!\n",Num); /*显示己被删除的信息*/
LD.length--;
}
}
else
printf("你的选择有误!");
}
}
//显示所有图书信息
void ShowBookTable(Library_Data p,int n)
{
int i;
system("cls");
if(n==0)
printf("现无图书记录! ");
else
{
printf("现在有%d本图书的信息。",n);
printf("\n**********************************************************************\n");
printf("图书书号 图书书名 图书作者 图书数量 图书单价(元)\n");
for(i=0;i<p.length;i++)
{
printf("----------------------------------------------------------------------\n");
printf("%-14d%-14s%-14s%-14d%-14f\n",p.book[i].BookNum,p.book[i].BookName,p.book[i].BookWrite,p.book[i].numbers,p.book[i].BookPrice);
}
printf("**********************************************************************\n");
}
}
//菜单函数
int menu_select() /*定义菜单函数*/
{
int c;
printf("按任意键进入选择菜单……\n"); /*提示压任意键继续*/
getch(); /*读入任意字符*/
system("cls"); /*清屏*/
printf("********************菜单选项如下****************\n\n"); /*以下为主菜单*/
printf(" 1. 初始化图书信息表\n");
printf(" 2. 显示全部图书记录\n");
printf(" 3. 查找图书记录\n");
printf(" 4. 删除图书记录\n");
printf(" 5. 插入新记录\n");
printf(" 6. 退出系统\n");
printf("***********************************************\n");
do{
printf("\n 输入您的选择(1~6):"); /*提示输入选项*/
scanf("%d",&c); /*输入选择项*/
if(!(c>=1&&c<=6))

}while(c<1||c>6); /*选择项不在0~6之间重输*/
return c; /*返回选择项,主程序根据该数调用相应的函数*/
}

void main()
{
Library_Data LD;
LD.Num=0;
int n,m;
for(;;) /*无限循环*/
{
switch(menu_select())
{
case 1:Create_Data(LD);break; /*初始图书生信息*/
case 2:ShowBookTable(LD,LD.Num);break; /*显示全部图书信息*/
case 3:
printf("请你选择查找方式(“1”为按书名查找,“2”为按书号查找):");
scanf("%d",&n);
Find_Book(LD,n);break; /*查找图书信息*/
case 4:
printf("请你选择删除方式(“1”为按书名删除,“2”为按书号删除):");
scanf("%d",&m);
Delete_Book(LD,m);break; /*删除图书信息*/
case 5:add(LD);break; /*插入图书信息*/
case 6:exit(0); /*结束程序*/
}
}
}本回答被提问者采纳

C++图书管理系统
cout <<" 读入图书编号:"<<endl; cin >> bookid; b=query(bookid); if (b==NULL) { cout <<" 该图书不存在" << endl; break; } b->delbook(); break; case '4': cout << " 读入图书编号:"<<endl; cin >> bookid; b=query(bookid); if (b==NULL) { cout <<" 该图书不存在"...

用C++做一个图书管理系统,需求如下:
用access数据库比较好,简单,参考代码如下,希望对您有帮助 供参考的代码:include<iostream.h> include<string.h> include<fstream.h> class stu { char name[20];double math,chinese,english,average,sum;public:stu(){ } stu(char n[20],double ma,double chin,double eng){ strcpy(name,n...

急用C++图书管理系统
cout << "输入图书编号:"<<endl; cin >> bookid; cout << "输入图书书名:"<<endl; cin >> bname; addbook(bookid,bname); break; case '2': cout << "输入图书编号:"<<endl; cin >> bookid; b=query(bookid); if (b==NULL) { cout << " 该图书不存在 "<<endl; break; } cout ...

c语言课程设计 图书管理系统
4 编写主函数,对所编写的矩阵类进行全面测试。要求用户界面采用菜单方式。测试中需要读者和图书数据通过I\/O流从磁盘文件读入,同时显示在屏幕上。得到的数据通过I\/O流写入磁盘文件保存,同时显示在屏幕上。5 源程序中要有充分的注释,报告中要有详细的流程图和文字材料。【类的设计】该程序包含了四个...

一个小型图书馆管理系统,需完成以下工作: 借书、还书。 在图书馆中添加...
以下代码,仅供参考。使用的是c++类对象做的。\/\/图书馆图书管理程序-完整版 \/\/本程序提供了多次性入库图书的存储、反复借书还书的功能,一旦退出,库存书信息将会丢失 include<iostream> include<string> include<iomanip> using namespace std;int sort=0;int a[1000];float b[1000];string n[1000...

C++图书馆系统!!三天内!!急!!!
一、 题目描述要求完成以下功能:书库管理功能、借阅者管理功能、借\/还书功能、查询功能。1、书库管理功能(1)图书属性。(书号、图书名称、数量)(2)设计约定。可以假定图书馆有N种书,每种书数量有若干,在系统启动时将这些书的信息加载到书库中;2、借阅者管理(1)教师借阅者属性。(名字、学院、教工号、图书证号...

c++做的一个小型图书馆管理系统,在运行会停止,目前知道是Bookdata和Re...
charemploysex[2];charemployleve[10];longintemploytage;}employ[50];structbook\/*定义书的类型*\/{intbooknum;charbookname[10];charbookcreat[10];intturefalse;\/*用于借书和还书模块判断一本书是否借出的条件*\/}book[1000];structcar\/*借书卡的数据类型*\/{intcarnum;charstudentname[10];int...

用C++设计一个简单的图书馆管理系统。包括借书、还书、图书维护、读者维...
http:\/\/www.baidu.com\/s?wd=filetype%3Aall+C%2B%2B%CD%BC%CA%E9%B9%DD%B9%DC%C0%ED%CF%B5%CD%B3

求数据库课程设计“图书馆管理系统” 要求:Visual C++6.0和SQL Server...
1. 能按各种方式(比如书名、编号、作者)查询图书馆的藏书情况。2. 能够方便地借阅图书、续借图书、归还图书。3. 能够查询自己的基本资料、借阅图书情况。4. 能够熟悉图书管理系统的使用。读者进入系统工作的流程图为: 2-1进入系统工作的流程图2.3.2 图书管理员作为图书管理员,他们对图书管理系统的要求有:1. 能...

C++编程,初级代码,请帮忙写一下,不能乱写,小白我还是能看懂的
写的图书馆:1.1.0(协调世界时2005-11-22) 音频 编号:2 格式:格式 格式信息:先进的音频编解码器 简介:信用证格式 编解码器编号:40 持续时间:42mn 25 比特率模式:变量 比特率:32 通道(拧):1频道 通道位置:前:丙 采样率:32千赫 有损压缩模式: 流量:9.71(16%)我来帮他解答 我是c++初学者,对于编程根本...

相似回答