ImageVerifierCode 换一换
格式:DOC , 页数:9 ,大小:34KB ,
资源ID:51547      下载积分:5 金币
已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(合同管理系统C语言代码.doc)为本站会员(田海滨)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(发送邮件至doc331@126.com或直接QQ联系客服),我们立即给予删除!

合同管理系统C语言代码.doc

1、/*合同管理系统*/*头文件(.h)*/#include #include #include #include ctype.h#define M 50 struct addressbook int num; char name20; float money20; char jia15; char yi15; int creatline15; int deadline15; char carryout15; char classify15;typedef struct addressbook AddressBook;int Init(AddressBook t);int AddRecord(Ad

2、dressBook t,int n);void List(AddressBook t,int n);void SearchOnName(AddressBook t,int n);void changeOnName(AddressBook t,int n);int Deleteonname(AddressBook t,int n);void SortOnNum(AddressBook t,int n);int quantityonjia(AddressBook t);void SaveRecord(AddressBook t,int n);int LoadRecord(AddressBook t

3、);int Menu_select();void main() AddressBook adrM; int length; while(1) switch(Menu_select() case 1: length=Init(adr); SaveRecord(adr,length); break; case 2:length=LoadRecord(adr); AddRecord(adr,length); break; case 3:length=LoadRecord(adr); List(adr,length); break; case 4:length=LoadRecord(adr); Sea

4、rchOnName(adr,length); break; case 5:length=LoadRecord(adr); changeOnName(adr,length); SaveRecord(adr,length); List(adr,length); break; case 6:length=LoadRecord(adr); Deleteonname(adr,length); SaveRecord(adr,length); List(adr,length); break; case 7:length=LoadRecord(adr); SortOnNum(adr,length); Save

5、Record(adr,length); List(adr,length); break; case 8:length=LoadRecord(adr); quantityonjia(adr,length); break; case 0:exit(0); /*如返回值为0则程序结束*/ int Menu_select() int c; printf(press any key enter menu.n); getchar(); /*读入任意字符*/ printf(*MENU*nn); printf( 1. 录入初始记录n); printf( 2. 增加记录n); printf( 3. 显示所有记录

6、n); printf( 4. 根据合同名称查找记录n); printf( 5. 根据合同名称修改记录n); printf( 6. 根据合同名称删除记录n); printf( 7. 按合同编号从小到大显示记录n); printf( 8. 根据合同甲方统计其合同量数n); printf( 0. 退出n); printf(*n);do printf(n Enter your choice(0-8):); if(scanf(%d,&c)!=1) while(getchar()!=n) continue;/* continue;*/ while(c8); return c;int Init(Addres

7、sBook t) int i,n; system(cls); printf(n请输入要输入的记录数:n); scanf(%d,&n); printf(开始输入记录:n); for(i=0;in;i+) system(cls); printf(n第%d条合同的编号:,i+1); scanf(%d,&ti.num); printf(第%d条合同的名称:,i+1); scanf(%s,ti.name); printf(第%d条合同的金额:,i+1); scanf(%s,ti.money); printf(第%d条合同的甲方:,i+1); scanf(%s,ti.jia); printf(第%d条合同

8、的乙方:,i+1); scanf(%s,ti.yi); printf(第%d条合同的等级:,i+1); scanf(%s,ti.classify); printf(第%d条合同的生效日期:,i+1); scanf(%s,ti.creatline); printf(第%d条合同的到期日期:,i+1); scanf(%s,ti.deadline); printf(第%d条合同是否完成:,i+1); scanf(%s,ti.carryout); return (n);int AddRecord(AddressBook t,int n) int i,m; char *s; system(cls); p

9、rintf(n请输入在增加的记录数:n); scanf(%d,&m); printf(开始追加记录n); for(i=n;in+m;i+) system(cls); printf(n第%d条合同的编号:,i+1); scanf(%d,&ti.num); printf(第%d条合同的名称:,i+1); scanf(%s,ti.name); printf(第%d条合同的金额:,i+1); scanf(%s,ti.money); printf(第%d条合同的甲方:,i+1); scanf(%s,ti.jia); printf(第%d条合同的乙方:,i+1); scanf(%s,ti.yi); pri

10、ntf(第%d条合同的等级:,i+1); scanf(%s,ti.classify); printf(第%d条合同的生效日期:,i+1); scanf(%s,ti.creatline); printf(第%d条合同的到期日期:,i+1); scanf(%s,ti.deadline); printf(第%d条合同是否完成:,i+1); scanf(%s,ti.carryout); return (n+m);void List(AddressBook t,int n) int i; system(cls); printf(nn*ADDRESS*n); printf(编号 姓名 金额 甲方 乙方 等

11、级 生效日期 到期日期 是否完成n); printf(-n); for(i=0;in;i+) printf(-6d%-20s%-20f,ti.num,ti.name,ti.money); printf(%-15s%-15s%-15d%-15d%-15s%-15n,ti.jia,ti.yi,ti.classify,ti.creatline,ti.deadline,ti.carryout); if(i+1)%10=0) printf(Press any key continue.n); getchar(); printf(*end*n);void SearchOnName(AddressBook

12、t,int n) char s20; int i,flag=0; system(cls); printf(请输入要查找的合同名:n); scanf(%s,s); for(i=0;in;i+) if(strcmp(s,ti.name)=0) flag=1; system(cls); printf(nn此人的信息如下:n); printf(编号 姓名 金额 甲方 乙方 等级 生效日期 到期日期 是否完成n); printf(-n); printf(-6d%-20s%-20f,ti.num,ti.name,ti.money); printf(%-15s%-15s%-15d%-15d%-15s%-15

13、n,ti.jia,ti.yi,ti.classify,ti.creatline,ti.deadline,ti.carryout); if(flag=0) printf(查无此人!n);int Deleteonname(AddressBook t,int n) char s20; char ch=N; int i,j,flag=0; system(cls); printf(请输入要删除的合同名n); scanf(%s,s); for(i=0;in;i+) if(strcmp(s,ti.name)=0) flag=1; system(cls); printf(nn*ADDRESS*n); prin

14、tf(编号 姓名 金额 甲方 乙方 等级 生效日期 到期日期 是否完成n); printf(-n); printf(%-6d%-20s%-20f,ti.num,ti.name,ti.money); printf(%-15s%-15s%-15d%-15d%-15s%-15n,ti.jia,ti.yi,ti.classify,ti.creatline,ti.deadline,ti.carryout); printf(Are you sure delete it(Y/N)n); ch=getchar(); if(ch=y|ch=Y) for(j=i;jn-1;j+) tj=tj+1; n-; i-;

15、 if(flag=0) printf(查无此人!n); return n;void changeOnName(AddressBook t,int n) char s20; int i,j,flag=0; system(cls); printf(请输入要修改的合同名:n); scanf(%s,s); for(i=0;in;i+) if(strcmp(s,ti.name)=0) flag=1; system(cls); printf(nn*ADDRESS*n); printf(编号 姓名 金额 甲方 乙方 等级 生效日期 到期日期 是否完成n); printf(-n); scanf(%-6d%-2

16、0s%-20f,ti.num,ti.name,ti.money); scanf(%-15s%-15s%-15d%-15d%-15s%-15n,ti.jia,ti.yi,ti.classify,ti.creatline,ti.deadline,ti.carryout); if(flag=0) printf(查无此人!n); return n; void SortOnNum(AddressBook t,int n) int i,j,flag; AddressBook temp; for(j=1;jn;j+) for(i=0;iti+1.num) temp=ti; ti=ti+1; ti+1=tem

17、p; printf(排序成功!n);int quantityonjia(AddressBook t) int i,n=0; system(cls); for(i=0;in;i+) printf(第%d条合同的甲方:,i+1); scanf(%s,ti.jia); n+; return(n);/*保存函数,参数为结构体数组和记录数*/void SaveRecord(AddressBook t,int n) int i; FILE *fp; /*指向文件的指针*/ if(fp=fopen(record.txt,w)=NULL) printf(can not open filen); exit(1)

18、 fprintf(fp,%d,n); fprintf(fp,rn); for(i=0;in;i+) fprintf(fp,%-6d%-20s%-20f,ti.num,ti.name,ti.money); fprintf(fp,%-15s%-15s%-15d%-15d%-15s%-15n,ti.jia,ti.yi,ti.classify,ti.creatline,ti.deadline,ti.carryout); fprintf(fp,rn); fclose(fp);/*关闭文件*/*读入函数,参数为结构体数组*/int LoadRecord(AddressBook t) int i,n; F

19、ILE *fp; if(fp=fopen(record.txt,a+)=NULL) printf(can not open filen); exit(1); fscanf(fp,%d,&n); for(i=0;in;i+) fscanf(fp,%6d%20s%20f%-15s%-15s%-15d%-15d%-15s%-15n,&ti.num,ti.name,ti.money,ti.jia,ti.yi,ti.classify,ti.creatline,ti.deadline,ti.carryout); fclose(fp); printf(从文件中成功读出记录!n); return n; 友情提示:部分文档来自网络整理,供您参考!文档可复制、编辑,期待您的好评与关注!9 / 9

宁ICP备18001539号-1