c语言课程设计图书管理系统 报告_课程设计图书管理系统

c语言课程设计图书管理系统 报告_课程设计图书管理系统实训项目名称:图书管理系统的设计与实现1.实训目的开发一个小型的图书管理应用软件,使用该软件可以实现图书信息的登记、浏览、借书、还书、删除和更新等操作。通过该系统的实现可以了解C++连接数据库的原理和技术,掌握VC界面的设计方法。2.实训要求(1)选择适当的程序开发语言(建议用C或C++)和数据库系统,完成实训内容。(2)程序能够正常运行,运算结果正确,满足设计要求。3.功…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

实训项目名称:图书管理系统的设计与实现

1.实训目的

开发一个小型的图书管理应用软件,使用该软件可以实现图书信息的登记、浏览、借书、还书、删除和更新等操作。通过该系统的实现可以了解C++连接数据库的原理和技术,掌握VC界面的设计方法。

2.实训要求

(1)选择适当的程序开发语言(建议用C或C++)和数据库系统,完成实训内容。

(2)程序能够正常运行,运算结果正确,满足设计要求。

3.功能描述

该图书管理系统主要包含以下基本功能:

(1)图书基本信息:书号ISBN,书名,出版社,出版日期,作者,价格等。

(2)图书类别信息:可分为科学技术、语言文学、政治经济、历史地理、意识形态和艺术等类别,每个类别有不同的类别代码。

(3)图书出售信息:图书出售日期、出售价格、出售数量。

4.总体设计

 

图书管理系统主要由图书信息、借阅系统和退出系统组成,如图所示。各模块功能如下:

1. 建立菜单界面。进入功能必须打开菜单,然后用户根据菜单选择相应的操作方式,

 

“图书信息”模块包含对图书的操作,增加图书、删除图书以及图书查询、库存浏览等功能,“增加图书”功能中需要依次输入书号、书名、作者、出版社、类别、进库量、单价,“图书查询”功能是按书名、书号、作者、图书分类查询,只要输入其中任一条件即可查询。

2.“图书借阅”模块由借书登记、还书登记和借阅情况模块构成,在“借书登记”中管理员对借出的图书进行登记,需要进行对证号、姓名、归还日期、借书书名进行登记,图书库中

这本书的库存减少,而读者在归还图书的图书库中这本书库存增加。图书管理借阅系统相当于图书管理人员日常的管理工作,即图书借阅、归还等登记工作。

 

3.退出系统。

5. 程序实现及相关描述


struct library { //图书馆结构体
	int xcl;//库存

	float price;//单价

	char name[20],author[20],chuban[20],kind[20],shuhao[20];

	struct library *next;

};

struct reader { //读者结构体

	int zhenghao;

	char mingzi[20],riqi[20],zname[20];

	struct reader *next;

};

void mainmenu()//主菜单

{
	system ("cls");

	printf("**************************************************");

	printf("\n\n 1.图书信息\n\n");

	printf("\n\n 2.借阅系统\n\n");

	printf("\n\n 3.退出系统\n\n");

	printf("\n\n 请按键选择,回车确定\n");

	printf("*************************************************\n");

	return ;

}

void menu1() //显示图书馆信息菜单

{
	system ("cls");

	printf("****************************************************");

	printf("\n 1.增加图书\n\n");

	printf("\n 2.删除图书\n\n");

	printf("\n 3.图书查询\n\n");

	printf("\n 4.库存浏览\n\n");

	printf("\n 5.返回上一层\n\n");

	printf("\n 请按键选择,回车确定\n");

	printf("***************************************************\n");

	return ;

}

void menu2() //显示查询菜单

{
	system ("cls");

	printf("请输入书号,书名,作者或类别查询:\n");

	printf("类别(科学技术 语言文学 政治经济 历史地理 意识形态 艺术)\n\n");

	return ;

}

void main1()//main1函数

{
	void tsgxx();//声明

	void jieshuxitong();//声明

	char choose;

	mainmenu();

	scanf("%c",&choose);

	switch(choose)//功能函数选择

	{
		case '1':

			????tsgxx();

			break;

		case '2':

			????jieshuxitong();

			break;

		case '3':

			????system ("cls");

			getch();

			exit(0);

			system ("cls");

			break;

	}
}

void tsgxx()//图书馆信息函数

{
	void tsjinku();

	void shanchu();

	void chaxunts();

	void xianshikucun();//函数声明

	char choose;

	menu1();

	scanf("%c",&choose);

	scanf("%c",&choose);

	for (;;)

		switch(choose)

		{
			case '1':

				????tsjinku();

				????break;

			case '2':

				????shanchu();

				????break;

			case '3':

				????chaxunts();

				????break;

			case '4':

				????xianshikucun();

				????break;

			case '5':

				????main1();

				????break;

		}
}

int tjzs()//统计文本个数函数

{
	FILE *fp;

	int txcl=0,n;

	float tprice=0;

	char tname[20]= {'\0'},tauthor[20]= {'\0'},tchuban[20]= {'\0'},tkind[20]= {'\0'},tshuhao[20]= {'\0'};

	fp=fopen("library.txt","r");//打开文件

	for (n=0; !feof(fp); n++) //逐个读文件

		fscanf(fp,"%s%s%s%s%s%d%f",tshuhao,tname,tauthor,tchuban,tkind,&txcl,&tprice);

	n--;

	fclose(fp);//关闭文件

	return (n);//返回个数

}

int tjdzzs()//统计文本个数函数

{
	FILE *fp;

	int zhenghao=0,n;

	char mingzi[20]= {'\0'},riqi[20]= {'\0'},zname[20]= {'\0'};

	fp=fopen("reader.txt","r");//打开文件

	for (n=0; !feof(fp); n++) //逐个读文件

		fscanf(fp,"%d%s%s%s ",&zhenghao,&mingzi,&riqi,&zname);

	fclose(fp);//关闭文件

	return (n);//返回个数

}

void tsjinku()//图书进库函数

{
	FILE *fp;

	int xcl=0,n=0;

	float price=0;

	char name[20]= {'\0'},author[20]= {'\0'},kind[20]= {'\0'},chuban[20]= {'\0'},shuhao[20]= {'\0'};

	char hitkey;

	system ("cls");

	if ((fp=fopen("library.txt","r"))==NULL)//打开图书馆文件,不存在此文件则新建

	{
		fp=fopen("library.txt","w");

		fclose(fp);

	}

	fp=fopen("library.txt","a");

	printf("\n请按以下格式输入图书信息:\n书号 书名 作者 出版社 类别 进库量 单价");

	printf("\n(类别(科学技术 语言文学 政治经济 历史地理 意识形态 艺术))\n");

	for (; hitkey!=27;) //循环输入

	{
		if (n!=0)

			printf("请输入:");

		scanf("%s%s%s%s%s%d%f",shuhao,name,author,chuban,kind,&xcl,&price);

		fprintf(fp,"%-8s%-9s%-14s%-16s%-18s%-7d%-8.2f\n",shuhao,name,author,chuban,kind,xcl,price);

		printf("继续输入请按回车,结束输入请按Esc\n");

		n++;

		hitkey=getch();

		for (; hitkey!=13&&hitkey!=27;)

			hitkey=getch();

	}

	fclose(fp);

	printf("\n保存成功,按任意键返回上一层!");

	getch();

	tsgxx();//返回上一层

}

void shanchu()//删除图书信息

{
	struct library *head=NULL;

	struct library *p,*p1,*p2;

	int txcl=0,n=0,j,i;

	float tprice=0;

	char tname[20]= {'\0'},tauthor[20]= {'\0'},tchuban[20]= {'\0'},tkind[20]= {'\0'},ttname[20]= {'\0'},tshuhao[20]= {'\0'};

	char hitkey;

	FILE *fp;

	if ((fp=fopen("library.txt","r"))==NULL)//打开文件

	{
		system ("cls");

		printf("\n记录文件不存在!按任意键返回");

		getch();

		tsgxx();

	}

	else

	{
		system ("cls");

		printf("\n请输入你要删除的书名:");//输入删除图书书名

		scanf("%s",&ttname);

		printf("\n确认删除请回车,取消请按Esc\n");

		hitkey=getch();

		for(; hitkey!=13&&hitkey!=27;)

			hitkey=getch();

		if (hitkey==27)

			tsgxx();

		fp=fopen("library.txt","r");

		for (j=0; !feof(fp);) //读文件夹信息,统计个数

		{
			j++;

			fscanf(fp,"%s%s%s%s%s%d%f",tshuhao,tname,tauthor,tchuban,tkind,&txcl,&tprice);
		}

		fclose(fp);

		fp=fopen("library.txt","r");

		for (i=1; i<j; i++)

		{
			fscanf(fp,"%s%s%s%s%s%d%f",tshuhao,tname,tauthor,tchuban,tkind,&txcl,&tprice);

			if (strcmp(ttname,tname))//比较名字,将不同名字的信息复制到链表

			{
				n++;

				if (n==1)//建立链表

				{
					p1=p2=(struct library*)malloc(LEN);

					head=p1;
				}

				else

				{
					p2->next=p1;

					p2=p1;

					p1=(struct library*)malloc(LEN);//新建链表

				}

				strcpy(p1->shuhao,tshuhao);//复制书号

				strcpy(p1->name,tname);//复制书名

				strcpy(p1->author,tauthor);//复制作者名字

				strcpy(p1->chuban,tchuban);//复制出版社

				strcpy(p1->kind,tkind);//复制类别

				p1->xcl=txcl;//复制个数

				p1->price=tprice;//复制单价

			}
		}

		if (n==0)

		{
			head=NULL;
		}

		else

		{

			p2->next=p1;

			p1->next=NULL;

			fclose(fp);

		}
	}

	fp=fopen("library.txt","w");//清空文件

	fclose(fp);

	fp=fopen("library.txt","a");//追加文件

	p=head;

	for (; p!=NULL;) //把链表内容覆盖到文件

	{

		fprintf(fp,"%-8s%-9s%-14s%-16s%-18s%-7d%-8.2f\n",p->shuhao,p->name,p->author,p->chuban,p->kind,p->xcl,p->price);

		p=p->next;

	}

	fclose(fp);//关闭文件

	system ("cls");

	printf("\n删除成功 \n按任意键返回上一层\n");

	getch();//返回上一层

	tsgxx();

}

void chaxunts()//查询函数

{

	FILE *fp;

	char choose;

	int txcl=0,n=0,k=0,i,l;

	float tprice=0;

	char tname[20]= {'\0'},tauthor[20]= {'\0'},chazhao[20]= {'\0'},tchuban[20]= {'\0'},

	                                    tshuhao[20]= {'\0'},tkind[20]= {'\0'};

	if ((fp=fopen("library.txt","r"))==NULL)//打开文件

	{
		system ("cls");

		printf("\n记录文件不存在!按任意键返回");

		getch();

		tsgxx();

	}

	l=tjzs();//获得文件个数

	menu2();//调用菜单函数

	scanf("%s",chazhao);

	system ("cls");

	for (i=0; i<l; i++)

	{
		fscanf(fp,"%s%s%s%s%s%d%f",tshuhao,tname,tauthor,tchuban,tkind,&txcl,&tprice);//读文件信息

		if(!strcmp(chazhao,tshuhao)||!strcmp(chazhao,tname)||!strcmp(chazhao,tauthor)||!strcmp(chazhao,tkind))//输出查询信息

		{
			if (k==0)

			{

				printf("查询结果:\n\n");

				printf("书号\t书名\t作者\t\t出版社\t\t类别\t\t现存量\t单价\n");

			}

			printf("%-8s%-9s%-14s%-16s%-18s%-7d%-8.2f\n",tshuhao,tname,tauthor,tchuban,tkind,txcl,tprice);

			k++;

		}
	}

	if (k==0)//文件夹为空则输出无记录

	{
		system ("cls");

		printf("\n无符合记录!\n");

		getch();

		tsgxx();

	}

	fclose(fp);

	getch();//返回

	tsgxx();

}

void xianshikucun()//现实库存信息

{

	FILE *fp;

	int xcl=0,n=0,i=0,j=0;

	float price=0;

	char name[20]= {'\0'},author[20]= {'\0'},kind[20]= {'\0'},chuban[20]= {'\0'},shuhao[20]= {'\0'};

	if ((fp=fopen("library.txt","r"))==NULL)//打开文件夹

	{

		system ("cls");

		printf("\n记录文件不存在!");

	}

	n= tjzs();

	if (n==0)

	{
		system ("cls");

		printf("\n无任何记录!");

	}

	fp=fopen("library.txt","r");//打开只读文件

	system ("cls");

	printf("书号\t书名\t作者\t\t出版社\t\t类别\t\t库存量\t单价\n");

	for (i=0; i<n; i++) //输出信息

	{

		fscanf(fp,"%s%s%s%s%s%d%f",shuhao,name,author,chuban,kind,&xcl,&price);

		printf("%-8s%-9s%-14s%-16s%-18s%-7d%-8.2f\n",shuhao,name,author,chuban,kind,xcl,price);

	}

	fclose(fp);

	printf("\n按任意键返回\n");

	getch();//返回

	tsgxx();

}

void menu3() //显示借书系统主菜单

{
	system ("cls");

	printf("*****************************************************");

	printf("\n\n 1.借书登记\n\n");

	printf("\n\n 2.还书登记\n\n");

	printf("\n\n 3.借阅情况查看\n\n");

	printf("\n\n 4.返回上一层\n\n");

	printf("\n\n 请按键选择,回车确定\n");

	printf("****************************************************");

	return ;

}

void jieshuxitong()//借书系统函数

{
	void jieshu();

	void huanshu();

	void duzheyilang();//函数声明

	char choose;

	menu3();

	scanf("%c",&choose);

	scanf("%c",&choose);//选择功能

	for (;;)

		switch(choose)//调用函数

		{
			case '1':
				jieshu();
				break;

			case '2':
				huanshu();
				break;

			case '3':
				duzheyilang();
				break;

			case '4':
				main1();
				break;

		}
}

void jieshu()//借书函数

{

	FILE *fp,*fp3;

	struct library *head=NULL;

	struct library *p,*p1,*p2;

	int txcl=0,i,loop,zhenghao=0,n=0,k=0,t=0,flag=0;

	float tprice=0;

	char tname[20]= {'\0'},tauthor[20]= {'\0'},tchuban[20]= {'\0'},tkind[20]= {'\0'},tshuhao[20]= {'\0'},

	                                    ttname[20]= {'\0'},mingzi[20]= {'\0'},riqi[20]= {'\0'},zname[20]= {'\0'};

	char hitkey=0;

	system ("cls");

	{

		if ((fp=fopen("library.txt","r"))==NULL)//打开图书馆文件

		{

			system ("cls");

			printf("\n 图书馆无库存!按任意键退出!");

			getch();

			exit (0);

		}

		else {
			{

				printf("\n请输入借阅书名:\n请输入:");//输入书名

				scanf("%s",zname);

				k= tjzs();//统计图书馆文件个数

				for (i=0; i<k; i++) //读入图书馆信息,存储到链表

				{

					fscanf(fp,"%s%s%s%s%s%d%f",tshuhao,tname,tauthor,tchuban,tkind,&txcl,&tprice);

					n++;

					if (n==1)

					{
						p1=p2=(struct library*)malloc(LEN);

						head=p1;

					}

					else

					{
						p2->next=p1;

						p2=p1;

						p1=(struct library*)malloc(LEN);//新建链表

					}

					strcpy(p1->shuhao,tshuhao);//复制书号

					strcpy(p1->name,tname);//复制书名

					strcpy(p1->author,tauthor);//复制作者

					strcpy(p1->chuban,tchuban);//复制出版社

					strcpy(p1->kind,tkind);//复制类别

					p1->xcl=txcl;//复制现存量

					p1->price=tprice;//复制单价

				}

				if (n==0)

					head=NULL;

				else

				{

					p2->next=p1;

					p1->next=NULL;

					fclose(fp);

				}
			}
		}

		p=head;

		for (; p!=NULL;) //读链表

		{

			if(!(strcmp(p->name,zname)))//名字相同

			{
				flag=1;//标记取1

				loop=p->xcl;//现存量减1

				(p->xcl)--;
			}

			p=p->next;

		}

		if(flag&&(loop>0))//存在借书书名且现存量大于0

		{
			fp=fopen("library.txt","w");

			fclose(fp);

			fp=fopen("library.txt","a");

			p=head;

			for (; p!=NULL;)

			{

				fprintf(fp,"%-8s%-9s%-14s%-16s%-18s%-7d%-8.2f\n",p->shuhao,p->name,p->author,p->chuban,p->kind,p->xcl,p->price);

				p=p->next;

			}

			free(p);//把链表内容覆盖文件

			fclose(fp);
		}

		if(flag&&(loop>0))//存在借书书名且现存量大于0

		{
  
  {

				if ((fp3=fopen("reader.txt","r"))==NULL)//建读者文件夹

				{
					fp3=fopen("reader.txt","w");//打开只读文件

					fclose(fp3);

				}

				fp3=fopen("reader.txt","a");//以附加的方式打开文件

			}

			{
  
  {
					if (n!=0)

						printf("\n请按以下格式输入读者信息:\n 证号 姓名 归还日期 借书书名\n请输入:");//录入读者信息

					scanf("%d %s %s %s",&zhenghao,&mingzi[20],&riqi[20],&zname[20]);

					fprintf(fp3,"\n%-8d%-23s%-18s%-10s\n",zhenghao,&mingzi[20],&riqi[20],&zname[20]);

					fp=fopen("library.txt","w");//删除图书馆文件信息

					fclose(fp);

					fp=fopen("library.txt","a");//重新追加信息

					p=head;

					for (; p!=NULL;) //把链表内容覆盖图书馆文件

					{

						fprintf(fp,"%-8s%-9s%-14s%-16s%-18s%-7d%-8.2f\n",p->shuhao,p->name,p->author,p->chuban,p->kind,p->xcl,p->price);

						p=p->next;

					}

					fclose(fp);

					fclose(fp3);

					printf("成功!按任意键返回\n");

					getch();//返回

					jieshuxitong();//调用借阅系统

				}
			}

			jieshuxitong();//调用借阅系统

		}

		else

			printf("此书已被借完!按任意键返回!");//否则输出此书已被借完

		getch();//返回

		jieshuxitong();//调用借阅系统

	}
}

void huanshu()//还书函数

{
	FILE *fp,*fp3;

	struct reader *head=NULL;

	struct reader *p,*p1,*p2;

	struct library *lhead1=NULL;

	struct library *zp1,*lp1,*lp2;

	int txcl=0,i;

	float tprice=0;

	char?tname[20]= {'\0'},tauthor[20]= {'\0'},tkind[20]= {'\0'},

	                                    tchuban[20]= {'\0'},ttname[20]= {'\0'},tshuhao[20]= {'\0'};

	int ttzhenghao=0,tzhenghao=0,n=0,k=0,t=0,flag=0;

	char tmingzi[20]= {'\0'},triqi[20]= {'\0'},tzname[20]= {'\0'},ttzname[20]= {'\0'};

	char hitkey=0;

	system ("cls");

	{

		if ((fp=fopen("reader.txt","r"))==NULL)//不存在读者文件,则输出不能还书

		{

			system ("cls");

			printf("\n 不存在借书者!按任意键退出!");

			getch();

			exit (0);

		}

		else

		{
  
  {

				printf("\n请输入读者证号和书名:\n请输入:");

				scanf("%d %s",&ttzhenghao,ttzname);//输入还书证号和书名

				k=tjdzzs();//获取读者文件夹信息个数

				for (i=0; i<k; i++) //读取读者文件夹信息

				{

					fscanf(fp,"%d%s%s%s\n ",&tzhenghao,tmingzi,triqi,tzname);

					if((ttzhenghao==tzhenghao)&&!strcmp(ttzname,tzname))//如果证号书名存在,则标记为1

						flag=1;

				}

				fclose(fp);

				fp=fopen("reader.txt","r");//打开读者文件

				if(flag)

				{

					for (i=0; i<k; i++) //将读者文件复制到链表

					{

						fscanf(fp,"%d%s%s%s\n ",&tzhenghao,tmingzi,triqi,tzname);//读取文件信息

						if(!((ttzhenghao==tzhenghao)&&!strcmp(ttzname,tzname)))

						{
							n++;

							if (n==1)

							{
								p1=p2=(struct reader*)malloc(LEN1);//新建链表

								head=p1;

							}

							else

							{
								p2->next=p1;

								p2=p1;

								p1=(struct reader*)malloc(LEN1);//新建链表

							}

							p1->zhenghao=tzhenghao;//复制证号

							strcpy(p1->mingzi,tmingzi);//复制读者名字

							strcpy(p1->riqi,triqi);//复制日期

							strcpy(p1->zname,tzname);//复制书名

						}
					}

					if (n==0)

						head=NULL;

					else

					{

						p2->next=p1;

						p1->next=NULL;

						fclose(fp);

					}

					fp=fopen("reader.txt","w");//清空读者文件

					fclose(fp);

					fp=fopen("reader.txt","a");//追加信息

					p=head;

					for (; p!=NULL;) //把链表内容覆盖读者文件

					{

						fprintf(fp,"\n%-8d%-23s%-18s%-10s\n",p->zhenghao,p->mingzi,p->riqi,p->zname);

						p=p->next;

					}

					free(p);

					fclose(fp);

				}
			}
		}
	}

	if(flag)//标记为1,即还书时

	{
  
  {

			{
				printf("确认还书请按回车!");

				for (; hitkey!=13&&hitkey!=27;)

					hitkey=getch();

				if (hitkey==13)

					printf("成功!按任意键返回!");

				n=0;
				flag=0;

				fp3=fopen("library.txt","r");//打开图书馆文件

				k=tjzs();//获取图书馆文件个数

				for (i=0; i<k; i++) //将图书馆文件复制到链表

				{

					fscanf(fp3,"%s%s%s%s%s%d%f",tshuhao,tname,tauthor,tchuban,tkind,&txcl,&tprice);//读取信息

					n++;

					if (n==1)

					{
						lp1=lp2=(struct library*)malloc(LEN);//新建链表

						lhead1=lp1;

					}

					else

					{
						lp2->next=lp1;

						lp2=lp1;

						lp1=(struct library*)malloc(LEN);//新建链表

					}

					strcpy(lp1->shuhao,tshuhao);//复制书号

					strcpy(lp1->name,tname);//复制书名

					strcpy(lp1->author,tauthor);//复制作者

					strcpy(lp1->chuban,tchuban);//复制出版社

					strcpy(lp1->kind,tkind);//复制类别

					lp1->xcl=txcl; //复制现存量

					lp1->price=tprice;//复制单价

				}

				if (n==0)

				{
					lhead1=NULL;
				}

				else

				{

					lp2->next=lp1;

					lp1->next=NULL;

					fclose(fp3);

				}
			}
		}

		zp1=lhead1;

		for (; zp1!=NULL;)

		{

			if(!(strcmp(zp1->name,ttzname)))//寻找书名相同

				++(zp1->xcl);//现存量加1

			zp1=zp1->next;

		}

		fp3=fopen("library.txt","w");//清空图书馆文件

		fclose(fp);

		fp3=fopen("library.txt","a");//追加信息

		zp1=lhead1;

		for (; zp1!=NULL;) //把链表内容覆盖图书馆文件

		{

			fprintf(fp3,"%-8s%-9s%-14s%-16s%-18s%-7d%-8.2f\n",

			        ????????zp1->shuhao,zp1->name,zp1->author,zp1->chuban,zp1->kind,zp1->xcl,zp1->price);

			zp1=zp1->next;

		}

		fclose(fp3);

		getch();//返回

		jieshuxitong();//调用借阅系统

	}

	else

		printf("不存在此信息!按任意键返回!");

	getch();//返回

	jieshuxitong();//调用借阅系统

}

void duzheyilang()//显示借书情况函数

{

	FILE *fp;

	int zhenghao=0,xcl=0,n=0,i=0,j=0;

	char mingzi[20]= {'\0'},riqi[20]= {'\0'},zname[20]= {'\0'};

	if ((fp=fopen("reader.txt","r"))==NULL)//打开读者文件夹

	{

		system ("cls");

		printf("\n记录文件不存在!");

	}

	n=tjdzzs();

	if (n==0)

	{
		system ("cls");

		printf("\n无任何记录!");

	}

	fp=fopen("reader.txt","r");

	system ("cls");

	printf("\n证号\t读者姓名\t\t还书日期\t书名\n");

	for (i=0; i<n; i++) //输出文件信息

	{

		fscanf(fp,"%d%s%s%s\n ",&zhenghao,mingzi,riqi,zname);

		printf("\n%-8d%-23s%-18s%-10s\n", zhenghao,mingzi,riqi,zname);

	}

	fclose(fp);

	printf("\n按任意键返回\n");

	getch();//返回

	jieshuxitong();//调用借阅系统

}

有需要的可以去https://download.csdn.net/download/chaokudeztt/11244824下载源码,C语言课程设计图书管理系统。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183510.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql的启动命令_mysql的配置和启动命令

    mysql的启动命令_mysql的配置和启动命令一.mysql配置文件在linux系统下的位置使用命令查询位置:1.找到安装位置whichmysql->/usr/bin/mysql2.接下来就可以针对这个目录通过一些命令查看配置文件在哪了,如下/usr/local/bin/mysql–verbose–help|grep-A1’Defaultoptions’得到以下结果:服务器首先读取的是/etc/mysql/m…

    2022年5月21日
    36
  • layui 弹出层和提交表单

    layui 弹出层和提交表单在点击修改按钮的时候,content路径CPTL/+curId ,路径中的curid是当前信息的ID,弹窗跳出当前的数据信息 2. 把提交的按钮写在子页面里面,这里没有用layui自带的yes:function(), 3….

    2022年6月12日
    77
  • git把某个文件去除版本控制

    git把某个文件去除版本控制

    2021年10月20日
    82
  • 高分1(GF1)、高分2(GF2)卫星数据大气校正[通俗易懂]

    高分1(GF1)、高分2(GF2)卫星数据大气校正[通俗易懂]KEYWORDS:GF1,GF2,RSD,大气校正,遥感软件0.RSD大气校正RSD是李国春教授团队开发的一款遥感数处理软件。其大气校正模块是参照USGSLaSRC大气校正流程,使用VC++重新改写并在Windows平台实现的内置大气校正功能。1.原理与方法RSD大气校正是应用6SV大气辐射模型原理实现的RSD遥感平台内置软件功能。其对Landsat8OLI大气校正部分延续了LaSRC的校…

    2022年10月9日
    0
  • Java基础入门笔记08——文件流,IO流,FileIputStream类,FileOutputStream类,缓冲流,转换流,标准输入输出流,打印流,数据流,对象流,随机存储流

    Java基础入门笔记08——文件流,IO流,FileIputStream类,FileOutputStream类,缓冲流,转换流,标准输入输出流,打印流,数据流,对象流,随机存储流IO流java.io.File类——对计算机操作系统中的文件和文件夹文件流——基于文件的操作,一般都以File开头缓冲流——基于内存的操作,一般都以BuffereDd开头转换流标准输入输出流打印流——PrintStream/PrintWriter——System.out.println数据流对象流——把一个对象转换为数据流进行读写,涉及到序列化、反序列化随机存取文件流——这里的随机是指随意,想在哪里进行就在哪里进行,进行的操作也是可以随意指定的相对路

    2022年8月8日
    15
  • jq 取 scrollHeight值

    jq 取 scrollHeight值jq取scrollHeight,$(“#tendersList”).scrollHeight拿不到$(“#tendersList”)[0].scrollHeight//取值scrollHeight$scope.initScroll=function($last){ if($last){ console.log($(“#tendersList”).height()…

    2022年7月24日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号