C语言程序设计个人财务管理系统_第1页
C语言程序设计个人财务管理系统_第2页
C语言程序设计个人财务管理系统_第3页
C语言程序设计个人财务管理系统_第4页
C语言程序设计个人财务管理系统_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、程序设计工程训练扌艮告C语言程序设计个人财务管理系统课程名称C语言程序设计工程训练姓 名院(系)信息科学与技术学院专业班级学 号指导教师教务处制1. 需求分析编写一个个人财政支出管理系统,主要解决的问题是作为一个系统而言, 它所要面对不只是某一个人而言,而是要面对很多的用户。那么想要解决这一 问题,就必须要求这个系统能够存储许多用户的基本信息和记录。同时也要求 系统能够对不同的用户的身份进行查找和验证。在验证通过之后,在对其进行 用户所要求的操作。作为一个财政支出系统,那么就要求对于用户关于金钱的每一项操作都要 有相应的记录,同时并允许用户对于每一条整体的记录进行操作,例如可以根 据时间来查找

2、某一确定日期是否进行了收入或者支出的操作,也可以根据特定 的需要來删除某一条整体的记录。但不允许对每条记录的单项数据进行更改, 因为不管是收入还是支出,所涉及的金额都是固定的,时间也是固定的,所以 系统不允许用户对其进行操作。除此之外,还必须有足够大的空间来存储新的 记录。所以此程序就是基于这个思想而编写出来的,基本满足了用户对于一个 财政支出管理系统所要求的相关功能。2系统总框图和功能模块说明系统总框图功能模块说明(1) old_record():此函数由系统自行调用,作用是将所有用户信息存 入系统。(2) voidsaveO:此函数的作用是将结构体数组中的信息写入文件存储, 由系统调用。(

3、3) load():此函数的作用是将结构体数组中写入文件的信息读出,由 系统调用。(4) lookup_accounts ():此函数的作用是将用户输入的帐号与系统中 的所有帐号进行对比,查看系统中是否有此帐号。(5) check.code ():此函数是作用是在系统查询到了帐号之后,对用户 输入的帐号和密码进行检验,看是否相对应。(6) print_message ():此函数的功能是在系统检查了用户输入的帐号 和密码之后,如果用户通过了系统的检查,在此显示用户可见的基本信息。(7) find record ():此函数的作用是根据用户输入的口期进行查找操作。(8) insert_recor

4、d ():此函数的功能是在记录中增加一条新的记录,这个记录由用户输入。(9) del_record ():此函数的功能是根据用户的输入的位置,将相应位 置的记录删除。(10) sum_num ():此函数的功能是计算所有收入和支出的总和,计算全 部的收入的总合,计算全部输出的总合。(11) 打印输出记录的函数:在本程序中一共有三个打印输出记录的函数, 分别为 all_print ( )、acc_print ( )、pay_print ()这三个函数。它们的 功能依次是打印输出全部记录,打印输出输入记录,打印输出支出记录。(12) mian():在主函数中,可以根据用户的选择来操作系统允许用户使

5、 用的功能,也可以随时退出这个系统。3系统设计主要结构体个人信息账户信息主要功能函数old_record()欢迎使用个人财政支岀管理系统I1、彗陆铮2、退岀系统感谢您使用本系统,咼见!ress: any key to continue欢迎使用个人财政支出管理系统!1.0.l=E;!=Ei录录E有有 记记记SES 找加掘出岀 替一 输 2 3 4 5 6 7zwang也号= 100丄号在号在号在用y 入不入不入不您s KH1es L主后帐请帐溝帐惑如,请重新输入!,请重新输入!key to continue圭鞘入帐号=1001j入密码:mm请选择您要进行的操作.thecodeisthe Lcod

6、eistheLcodeisthecodeis10011wponff,please wpong-.pl&asemon, pleaseVM*onsf, pleaseinput again? input again*input again?input again?貓驛薙罷请歆警谢谢使用再见!ress any key to continue.姓名:wang = 1001请输入您要查询的日期:07-01-01dateoperatemoney07-01-01in30003猜输入你要插入的位置;请触入您要添加的记录;日期;07-05-01臊作;in金额;10005dateoperatenum07-05-01

7、in100007-01-81in300007-02-01out-150007-03-01in250007-04-01out-1000总金薪为二4000总收入为二6500总支出为:-250025dateo peenun07-05-01in100007-02-01out-150007-03-91in250007-04-91out-1000总金额为=1000总收入为;3590 总支出为二-25006dat eope pa.t enun07-05-01in100007-93-01in2500总收入金额为:35007dat eope pa.t ens07-02-01out-150007-04-01out

8、-1000活的支岀为:-25盹 感谢您使用本系统,再玛IPwss any key to continue.len二4;strcpy (r 0_ account, /,1001,z);strcpy(r1 account,1002);strcpy (r2 account, 1003);strcpy(r0_. code, 111111);strcpy(r1. code, 222222);strcpy(r2. code, 333333);strcpy (r 0一 name , z,wangz,);strcpy (r 1 nameli);strcpy (r2 name ,zhang);strcpy(r0

9、_. rec0. date, 07-01-01);strcpy(r0_ rec1. date,07-02-01);strcpy (r0. rec2. date, 07-03-01);strcpy(r0. rec3. date, 07-04-01);strcpy(r1. rec0. date, 07一01一02);strcpy (r 1. rec1. date, 07-02-02);strcpy (r1. rec2. date, 07-03-02);strcpy(r1. rec3. date, 07-04-02);strcpy(r2. rec0. date, 07-01-03);strcpy (

10、r2. rec1. date, 07-02-03);strcpy(r2. rec2. date, 07-03-03);strcpy(r2. rec3. date, 07-04-03);strcpy (r0_ rec0 operate, in);strcpy (r0_ rec1 operate, out);strcpy (r0_ rec2 operate, in);strcpy (r0_ rec3 operate, out);strcpy (r1 rec0 operate, out);strcpy (r1 rec1 operate, in);strcpy (r1 rec2 operate, ou

11、t);strcpy (r1 rec3 operate, in);strcpy (r2 rec0 operate, in);strcpy (r2 rec1 operate, out);strcpy (r2 rec2 operate, in);strcpy (r2 rec3 operate, out);0 rec0 num二3000;r0 rec1. num二-1500;r0 rec2. num二2500;r 0 rec 3. num二T000;r1 rec0. num二-3000;:rl rec1 num二5000;r 1. rec 2. num二T000;r1 rec2. num二2000;r

12、2 rec0. numlOOO;r2 rec1 num二一1500;r2 rec2. numSOOO;r2 rec2. num二-500;return ok;n);:return;for(i二0;imax;i+-)if(fwrite(&ri, sizeof(struct list_record), 1, fp)!二1)printf (file write error n);fclose (fp); n );return;for(i=0;imax;i+)if (fread(&ri, sizeof(struct list_record), 1, fp)!=1)辻(feof (fp)(fclose(

13、fp);return;fclose (fp);ccount, acc)=0)return ok;printff帐号不存在,请重新输入! n);return null;ate, 0);trcpyi. operate,0);for(i=0;ilopl;i-)strcpy(*p) reci date, (*p) reci-l date);strcpy (*p) reci operate, (*p) reci-l operate);(*p) rec Li num=(*p) reci一1 num;strcpy (p-reci date, pl-date);strcpy (*p) reci operate

14、, (*pl) operate);(*p) reci num二(*pl) num;(*p) rec_len+;return ok;ec. _len)printf (/the position is wrong n);return null;elsefor(i=lop2-l;i0) sum_in+二(*p) rec li num;if(*p). reci. num0)ec_len;i+-)sum_acc+二(*p) reci num;printf(”s、(*p) reci date);printf(“sz,, (*p) rec i operate);printf(%d, (*P) rec i n

15、um);printf (rT);printf (总收入金额为:dn, sum_accreturn ok;if (suiDaccnO)printf (there is no account n);:return null;eci num0)sum_pay+二(*p) reci num;pri ntf (“s,(*p) reci date);printf(%s、(*p) reci operate);printf(d、(*p) rec i num);printf(n);printf (总的支出为:%dn,z, sum_pay);return ok;if (sum_pay二二0)printf (/th

16、ere is no payout n);return null:void main()int j=0, n=0;int x, k, lopl, lop2;char datal20;char accou20, cod20;struct record *p0;struct record a;struct list_record b:struct list_record *p;二0;pO二&a;old_record(r);save();printf(z/欢迎使用个人财政支出管理系统! n);load();printf (“-);printfCIIW);printf (z/11、登陆系统In);pri

17、ntf (/z |2、退出系统IW);printf C|I );printf (“-);scanf (”%d, &x);if(x=0)printfC 感谢您使用本系统,再见! n);elsedoprintf (z,请输入帐号:“);/while (j3):scanfaccou);if (lookup_accounts(r, accou) printf C请输入密码:”); /while (j3)scanfcod);n+;while(n3);辻(n=3)printf C您的密码不正确,请退出系统,谢谢使用,再见! ); break;elseprintf (”-请选择您要进行的操作n);print

18、fCIIn); /while(j0)if(k=10)printfC感谢您使用本系统,再见! n);if(k=2)printf(,/请输入您要查询的日期:);scanfdatal);find_record(p, datal);if (k=3)printfC请输入你要插入的位置:);scanf&lopl);printfC请输入您要添加的记录:n);printfC 0 期:);scanf (%s, pOdate);printfC操作:);scanfpO-operate);printfC金额:);scanf(%d, &(pOnum);insert_record (p,pO,lopl);if (k=4)printfC请输入您要删除的记录的位置:rT);scanf&1op2);del_record (p,lop2);if (k=5)all_print (p);sum_num(p);if (k=6)acc_print(p);if(k=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论