c语言 合同管理系统
发布网友
发布时间:2022-05-14 15:32
我来回答
共1个回答
热心网友
时间:2023-10-22 16:32
#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
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
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)
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();
}
.
希望能够帮助你 ^_^ 也希望能够选为最佳答案!
有没有一款专用的合同管理软件
本套软件与微软Office系统紧密集成,包括财务系统、进销存、应收应付合同管理等部分。 财务系统包括帐务,报表等部分,帐务部分包括凭证管理、账簿查询,辅助管理、系统管理 www.skycn.com/soft/27958.html 2. Office2000合同管理系统 V2.5 您是否正在为众多的供货商和付款合同的管理而发愁,使用她吧。本...
求:信息管理课程作业--图书查询系统和订票系统
10. 2 从职工工资处理对话框切换到职工基本信息处理对话框 案例三 用VC 制作一个图书出版管理系统 3. 1 系统设计的目的和意义 3. 2 系统功能设计 3. 3 数据库与数据表的设计 3. 3. 1 定义数据表结构 3. 3. 2 数据库与数据表创建过程 3. 4 图书出版管理系统应用程序框架 3. 5 开发图书出版基本信息...
谁能推荐一个比较实用的企业合同管理系统?最好是网络版,免费使用的那种...
速达E3系列产品基于先进的客户机/服务器(C/S)体系结构开发而成,采用了大型关系型数据库SQLSERVER2000支持,彻底解决了长期困扰企业信息化工作当中安全性、可靠性等问题,性能更加稳定,数据交换速度更加快捷、准确。完全的网络化操作 速达E3系列是真正的网络化信息管理软件,各个站点的数据通过网络迅速传递...
如何做好合同管理
合同管理人员的业务素质的高低,直接影响着合同管理的质量。通过学习培训,使合同管理人员掌握合同法律知识和签约技巧,坚持持证上岗和年度考核制度,这不但增强了合同管理人员的责任感,也提高了合同法律意识。特别要对企业的经营人员进行培训,提高他们的合同意识,掌握合同法律制度,并自觉地运用到企业的经济活动中,使企业从被...
如何做好合同管理工作?
OA系统针对企业合同管理的困境直击要害,构建了以合同管理为主线的“全生命周期的合同管理体系”,合同信息完整记录,让审批有据可循。合同管理功能展示:1、合同管理——流程管理便捷规范 (1)合同起草:将合同流程电子化,建单后直接生成合同台账,借阅审批时间。(2)合同台账:台账内清晰显示合同类型、...
跪求凌阳61单片机设计的语音识别系统的主程序
使用C语言实现菜单控制的源程序,实现了学生成绩的管理.-,C-C++,界面编程/GUI Develop 在打开图像时,点击图像可在打开对话框中实时看到预览,绝好.-,Visual C++,界面编程/GUI Develop 用ASP.NET做的合同管理系统,该系统包括合同进展控制模块,员工管理模块,客户管理模块,项目管理模块,合同管理模块和合同...
文档管理系统哪个比较好?
会博通综合文档管理系统功能:分类自定义 会博通就像您操作系统中的资源管理器一样,可自定义管理分类(类和文件夹),用于管理不同类型、来源的文档资料。属性自定义 提供信息属性的自定义,为系统不同类型的文档赋予对应的属性,例如合同、图纸、图书等不同的属性配置。正文与附件 系统中的每一条信息均可...
管理信息系统课程设计
代码设计可以不要课程设计的内容一)设计一个网上订货发货系统内容包括:一、设计任务设计网上合同订货发货系统... 有没有哪位高手可以按照下面的要求做一份课程设计啊?我完全看不懂……代码设计可以不要课程设计的内容一)设计一个网上订货发货系统 内容包括: 一、设计任务设计网上合同订货发货系统,涉及合同签订和合同...
工程项目管理的软件有哪些?
金蝶、用友等。软件分类:1、按应用结构分类 结构分为C/S架构(客户端/服务器结构)和B/S架构(浏览器和服务器结构),两种结构目前都支持远程应用。CS在网络条件差的情况下应用,BS在条件好的网络下应用。CS以往最大的问题在于维护,而类似厂商目前通过自动更新来解决此问题,因此这方面的差别不大。2、...
渤海大学工学院教学成果
赵绪辉老师在教学上独树一帜,主持的软件专业'基于项目的案例教学法'获得校级教学模式改革奖,此外,他开发的供用电合同管理系统在2003年被评为锦州市优秀软件。在2003年,他参与的面向21世纪高校专业基础课改革研究-数字电路部分,多次获得校级教学成果二等奖。王秀敏、尹作友等教师在相关领域也做出了贡献...