问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用C语言写图书管理系统设计 求各位大哥大姐帮帮忙啊!跪求!!!

发布网友 发布时间:2022-04-28 17:10

我来回答

3个回答

热心网友 时间:2022-06-19 21:56

#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
#include<ctype.h>
#define STACK_INIT_SIZE 10
#define OK 1
#define TRUE 1
#define FALSE 0
#define ERROR 0

struct student /*定义学生类型,用于存放借出的书籍*/
{
int carnum;
char lendbook[10];
}student[1000];

struct employ /*定义职工类型*/
{
int employnum;
char employname[15];
int employage;
char employsex[2];
char employleve[10];
long int employtage;
}employ[50];

struct book /*定义书的类型*/
{
int booknum;
char bookname[10];
char bookcreat[10];
int turefalse; /*用于借书和还书模块判断一本书是否借出的条件*/
}book[1000];

struct car /*借书卡的数据类型*/
{
int carnum;
char studentname[10];
int studentclass;
}car[100];

huanbook() /*还书函数*/
{
FILE *fp,*fp2; /*定义两个文件指针,fp2用于修改数据时设立临时文件用,防止数据遭破坏*/
int i,n;
int carnum;
char lendbook[10];
printf("请你输入你的卡号\n");
scanf("%d",&carnum);
fp=fopen("car.txt","r"); /*读取卡号记录*/
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) /*for循环判断卡号是否存在*/
{
if(car[i].carnum==carnum) /*卡号存在,进入下一循环*/
{
n=i;
fclose(fp);
printf("请输入你要还的书的名字\n");
scanf("%s",lendbook);
fp=fopen("record.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) /*判断是否借阅了输入的书*/
{
if(strcmp(student[i].lendbook,lendbook)==0) /*借阅了该书,进入下一循环,否则出错显示*/
{
fclose(fp);
fp=fopen("record.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)
{
if(strcmp(student[i].lendbook,lendbook)==0)
{
continue; /*删除还掉的书的借*录*/
}
fwrite(&student[i],sizeof(struct student),1,fp2); /*写入原来没还的书的记录*/
}
fclose(fp);
fclose(fp2);
fp=fopen("record.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp2)!=0;i++)
{
fwrite(&student[i],sizeof(struct student),1,fp); /*将借*录信息写回*/
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w"); /*清临时文件的记录*/
fclose(fp2);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) /*将书的记录写入临时文件,防止因为修改信息破坏以前的记录*/
{
if(i==n)
{
book[i].turefalse=1;
fwrite(&book[i],sizeof(struct book),1,fp2); /*将还的书的原来状态设为无人借阅的*/
continue;
}
fwrite(&book[i],sizeof(struct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++)
{
fwrite(&book[i],sizeof(struct book),1,fp); /*将临时文件写回*/
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w"); /*清临时文件*/
fclose(fp2);
printf("还书完毕,按任意键返回\n");
getch();
return 1;
}
}
printf("你没有借这样的书,任意键返回\n"); /*出错提示*/
fclose(fp);
getch();
return 0;
}
}
printf("系统没这样的卡,和管理员联系,按任意键返回\n"); /*出错提示*/
fclose(fp);
getch();
}

findbook()
{
FILE *fp;
char bookname[10];
int ture,i;
fp=fopen("book.txt","r");
printf("请输入你要查找的书名\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(bookname,book[i].bookname)==0)
{
if(book[i].turefalse==1)
{
printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else {printf("这本书已经有人借出\n");fclose(fp);return 0;}
fclose(fp);
return FALSE;
}
}
printf("没有你要查询的书籍\n");
fclose(fp);
return FALSE;
}

findbook1()
{
FILE *fp;
char bookcreat[10];
int ture,i;
fp=fopen("book.txt","r");
printf("请输入你要查找的作者名\n");
scanf("%s",bookcreat);
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(bookcreat,book[i].bookcreat)==0)
{
if(book[i].turefalse==1)
{
printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else {printf("这本书已经有人借出\n");fclose(fp);return 0;}
fclose(fp);
return FALSE;
}
}
printf("没有你要查询的书籍\n");
fclose(fp);
return FALSE;
}

lendcount()
{
FILE *fp;
int i,n=0;
fp=fopen("record.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)
{
printf("卡号:%d 借出的书籍:%s \n",student[i].carnum,student[i].lendbook);
n=n+1;
}
fclose(fp);
printf("目前共有%d本书借出\n",n);
printf("按任意键\n");
getch();
return n;
}

chabook()
{
char ch5;
do
{
printf("---------------欢迎进入图书查询系统!--------------\n");
printf(" 1:<按书名查找>\n");
printf(" 2:<按作者查找>\n");
printf(" 0:<返回>\n");
printf("请输入0--2,其他输入非法!\n");
scanf("%s",&ch5);
switch(ch5)
{
case '1':findbook();getch();break;
case '2':findbook1();getch();break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch5!='0');
return FALSE;
}

lendbook()
{
FILE *fp,*fp2;
int i,n;
int carnum;
printf("请你输入你的卡号\n");
scanf("%d",&carnum);
fp=fopen("car.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
if(car[i].carnum==carnum)
{
n=i;
fclose(fp);
printf("请输入你要借阅的书的名字\n");
scanf("%s",student[n].lendbook);
fp=fopen("book.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(book[i].bookname,student[n].lendbook)==0)
{
if(book[i].turefalse==0) {printf("对不起,此书有人借出,请借其他书\n");fclose(fp);getch();return;}
else
fclose(fp);
fp=fopen("record.txt","a+");
student[n].carnum=carnum;
fwrite(&student[n],sizeof(struct student),1,fp);
fclose(fp);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(book[i].bookname,student[n].lendbook)==0)
{
book[i].turefalse=0;
fwrite(&book[i],sizeof(struct book),1,fp2);
continue;
}
fwrite(&book[i],sizeof(struct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++)
{
fwrite(&book[i],sizeof(struct book),1,fp);
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w");
fclose(fp2);
printf("借书完毕,按任意键返回\n");
getch();
return;
}
}
printf("不存在这样的书,任意键返回\n");
fclose(fp);
getch();
return;
}
}
printf("你的卡号不存在,请申请新卡,按任意键返回\n");
fclose(fp);
getch();
}

carcount()
{
FILE *fp;
int i,n=0;
fp=fopen("car.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
printf("第%d张卡<卡号:%d 姓名:%s 班级:%d>\n",i+1,car[i].carnum,car[i].studentname,car[i].studentclass);
n=n+1;
}
fclose(fp);
printf("目前共有%d本书\n",n);
printf("按任意键\n");
getch();
}

delcar()
{
FILE *fp,*fp2;
int i;
int carnum;
char choice;
fp=fopen("car.txt","r");
fp2=fopen("bookl.txt","w");
printf("请输入你要删除的卡号\n");
printf("如果你输入的卡号存在,系统自动删除该信息!如果不存在,系统不做任何改动\n");
scanf("%d",&carnum);
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
if(car[i].carnum!=carnum)
{
fwrite(&car[i],sizeof(struct car),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要删除该卡?删除后该书籍的所有信息将无法恢复《Y/N》\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("car.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp2)!=0;i++)
{
fwrite(&car[i],sizeof(struct car),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getch();
return;
}
else
{
printf("按任意键返回\n");
getch();
return;
}
}

addcar()
{
FILE *fp;
int i=0;
fp=fopen("car.txt","a+");
printf("请你输入卡号\n");
scanf("%d",&car[i].carnum);
printf("请你输入学生姓名\n");
scanf("%s",car[i].studentname);
printf("请你输入班级\n");
scanf("%d",&car[i].studentclass);
fwrite(&car[i],sizeof(struct car),1,fp);
fclose(fp);
printf("输入完毕,任意键返回\n");
getch();

热心网友 时间:2022-06-19 21:56

一窍不通。

热心网友 时间:2022-06-19 21:56

那位大哥回答的绝。。。一点错误没有。。厉害
用C语言写图书管理系统设计 求各位大哥大姐帮帮忙啊!跪求!!!

《内容》该系统能实现图书馆管理的一般功能,包括读书信息录入、修改、删除、查询功能。要有图书借阅信息(借出、归还)的修改,系统能够提供时间段、时间的查询,并提供统计功能至少... 《内容》该系统能实现图书馆管理的一般功能,包括读书信息录入、修改、删除、查询功能。要有图书借阅信息(借出、归还)的修改,系统能够提...

软件设计与开发

在深圳市法本信息技术股份有限公司,软件设计与开发是我们核心业务的核心竞争力。我们遵循先进的软件开发方法论,如敏捷开发,确保项目高效迭代。设计过程中,我们注重用户体验与需求深度分析,通过原型设计与系统架构规划,打造高可用、易扩展的软件系统。开发环节则强调代码质量与团队协作,利用云原生技术栈加速产品上线,为客户提供稳定、安全、高效的软件解决方案。深圳市法本信息技术股份有限公司专注于数字化技术服务,致力为客户提供先进的数字化平台、技术和解决方案,以数字化技术为依托,聚焦自主安全可控的实时智能计算(Real-time Intelligent Computing , RTIC)关键技术和产品,助力金融、互联网、软...

用C语言编写一个“图书信息管理系统

constintMaxr=100;//最多的读者 constintMaxb=100;//最多的图书 constintMaxbor=5;//每位读者最多借五本书 //读者类,实现对读者的信息的描述 classReader { private:inttag;//删除标记1:已删0:未删 intno;//读者编号 charname[10];//读者姓名 intborbook[Maxbor];//所借图书 public:Re...

用C语言编一个简单的图书管理系统(包括借阅查询还书三部分)(学生作业...

s.number,s.name,s.price,s.count,s.time,s.date); row(s); }}这是我大一时候做的大作业,虽然不是图书管理系统,你只要改改就行

用C语言设计一个图书管理系统(高手请进)

printf("%c\n",ch);

C语言课程设计图书馆管理系统加讲解

printf("\n输入错误或无效图书序号.\n");return -1;} /*上面的函数是在数组中找到图书号匹配的记录,显示其信息并返 回数组下标,如果找不到相应记录则提示错误并返回-1。*/ void book_out(void){ int n,s,l,d;page_title("借阅图书");if((n=search_book())!=-1&amp;&amp;books[n].store&gt;0...

C语言实现MySQL图书管理系统cmysql图书系统

接下来,我们开始实现图书管理系统的功能:1. 添加图书信息 我们可以使用可视化的方式实现添加图书信息功能,实现代码如下:void add_book(MYSQL *mysql) { BOOK book;printf(“add_book:\n”);printf(“id:”);scanf(“%d”, &amp;book.id);printf(“name:...

C语言 有关于图书信息管理系统代码

2009-01-11 急求用C语言编写的图书管理系统源代码 131 2016-07-13 急求C语言图书管理系统代码 2010-06-21 图书信息管理系统C语言 8 2014-06-30 c语言图书管理系统代码 2019-01-08 求C语言编写简单的图书管理系统源代码 1 2019-01-13 用C语言编写图书管理系统代码中的查询系统 1 更多类似问题 &gt; ...

C语言实训图书信息管理系统设计

C语言实训图书信息管理系统设计 10 图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:1、图书信息录入功能(图书信息用文... 图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等...

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

高级语言程序设计(2)课程设计    一 程序设计说明书 【设计题目】 图书馆借阅管理 【问题描述】图书馆,适合用C++面向对象的功能来描述。图书馆管理系统分为借书、还书、图书管理和读者服务等四个部分。设计一个读者类Reader,记录每个读者基本信息;读者库类Rdatabase,记录所有读者...

用C语言编写的"图书馆管理系统"的源代码,删减版

厉害

设计一个图书管理系统C语言 图书管理系统c语言课程设计 C语言图书管理系统还书 大一c语言图书管理系统 c语言图书馆管理系统大程序 数据库C语言图书管理系统 C语言图书管理系统源代码 C语言图书信息管理系统 c语言图书管理系统排序
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
卡耐基的智慧大全集内容简介 会说话赢天下内容简介 卡耐基演讲与口才内容简介 商务口才训练内容简介 卡耐基金牌口才作者简介 卡耐基商务口才 作者简介 爱因斯坦的更多故事 杨柯叶谨言是什么电视 房贷和消费贷利率差别不大,但是还款金额差别挺大,都是怎么计算的... ...11月18号提现1500元、,11月25号还款1515,请问我还需要还 白天上班的时候猫关在笼子里可以吗? 一个C语言写的学生成绩管理系统的文件写入问题 C语言编程...编个文件管理系统 请问一下 写学生管理系统时怎么用c语言实现读取一个txt文件里的数据 操作系统课程设计,C语言写的文件管理系统 如何使用C语言编写图书管理系统? 用C语言 简单文件管理软件设计 主要内容:设计一个简单的文件管理系统,可实现对文件的建立 复制 删除等操 如何用c语言编写学生信息管理系统? 文件目录管理系统用C语言编程怎么做? 如何用c语言制作一个学生信息管理系统,要求以文件形式保存 C语言 小型文件管理系统的编写 要具体源程序 用java怎样连接mysql数据库 java 连接mysql 有几种方法 骨癌是因为什么引起的?治愈的希望有多大? 骨癌患者早期能治疗好吗 骨癌初期能治好吗?可以手术吗 骨癌可以治愈吗 骨癌是什么病? 骨癌能否治愈 骨癌能治愈么 猫可以关笼子里养吗? C 语言怎么编写一个项目管理系统 急求明天要交 猫可以放在笼子里养吗 求助,用c语言写一个班级管理系统,数据可以输出到指定文件夹中,包括姓名年龄,号码……,谢谢 猫关在笼子里养好吗 用C语言编写一个通讯录管理系统 猫要不要关在笼子里养 《秋》阅读答案 急!!! 用C语言建立一个学生通讯管理系统,怎样修改文件里的内容 猫放笼子里养好吗 建筑工程施工计划书归包清工得做吗? 短文《秋》阅读答案 猫可以在笼中养吗 《秋》阅读答案 《秋》短文分别写了什么这四个地方的秋景图? 猫可以一直关在笼子里吗? 秋的阅读理解。 苏教版《秋》阅读答案 苏教版《秋》阅读答案,用自己的话说说短文讲了什么内容? 猫咪关笼子里养好不好