个人资金账户管理.docx

上传人:scccc 文档编号:12490344 上传时间:2021-12-04 格式:DOCX 页数:16 大小:19.18KB
返回 下载 相关 举报
个人资金账户管理.docx_第1页
第1页 / 共16页
个人资金账户管理.docx_第2页
第2页 / 共16页
个人资金账户管理.docx_第3页
第3页 / 共16页
个人资金账户管理.docx_第4页
第4页 / 共16页
个人资金账户管理.docx_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《个人资金账户管理.docx》由会员分享,可在线阅读,更多相关《个人资金账户管理.docx(16页珍藏版)》请在三一文库上搜索。

1、实验报告实验一:个人资金账户管理姓名:*学号:班级:*实验时间:实验名称:个人资金账户管理 二:实验环境:一台安装有程序的电脑。三:实验目的(1)培养和锻炼对具有一定复杂度和规模的问题的分析与 求解能力。(2)掌握程序设计的综合方法,能综合应用各种数据类型 实现较复杂数据的存储。(3)培养良好的C程序设计风格与代码规范意识。四:实验内容:用C语言编程,实现对个人资金帐户的管理。五:实验步骤:(实验设计,关键代码。实验结果需截图)1、总体程序框图2、各模块程序流程图1)、主函数(程序流程图及运行界面) 主函数程序流程图简要说明:该功能主要是给用户显示一个功能菜单界面。主函数运行界面2)、录入资金

2、信息(源代码及运行界面)程序代码void addNewLog ()FILE *tfp;int m=0;char ch2;struct LogData logMAX;if(tfp=fopen("","ab+")=NULL)printf(" 不能打开文件! n");exit(0);while(!feof(tfp) /* 统计记录的条数 */ if(fread(&logm,LEN,1,tfp)=1)m+;fclose(tfp);if(tfp=fopen("","wb")=NULL)printf

3、(" 不能打开文件! n");exit(0);for(int i=0;i<m;i+)fwrite(&logi ,LEN,1,tfp);/* 向指定的磁盘文件 写入信息 */printf(" 是否添加账户资金信息( Y/N): ");scanf("%s",ch);while(strcmp(ch,"Y")=0|strcmp(ch,"y")=0)printf(" 请输入以下信息 .nn");printf(" 日期(格式: <2000-01-01>

4、 ) :");scanf("%s",&logm.logdate);printf(" 说明: ");scanf("%s",&logm.lognote);printf(" 费用(收入为+,支出为 -) :");scanf("%lf",&logm.charge);logm.logid=m+1;if(m=0)logm.balance=0; logm.balance=logm.balance+logm.charge;else if(m>0)logm.balance=

5、logm-1.balance+logm.charge;if(fwrite(&logm,LEN,1,tfp)!=1)printf(" 保存失败! ");elsepri ntf(”该记录保存成功!n");m+;printf("是否继续添加(Y/N):");sea nf("%s",ch);fclose(tfp);运行界面3) 、显示资金信息(源代码及运行界面)程序代码void listLog()FILE *tfp;struct LogData logMAX;int i,n ,m=0;if(tfp=fope n("

6、","ab+")=NULL)prin tf("不能打开文件! n");exit(O);while(!feof(tfp)if(fead(QOog3LLEN AffpHHl) m+fcoseafp)八Pl1nff(=述B諛云 1 ,|<酋陟幾云 2 ,|<蚩>云SB>即)scanf(=%d=QOn)八swifch(n)宀case 1 -pinff><4n一2B 善2济溢一2蹦四2>驾fo(noxmT+) pinff(=%2d%21s%15s%_n=_og=Logidog=Logda p-og 三.ogno(

7、Dog 三ohargQog 三.ba-ance)八sysCDm (二pause)break-case z><4n一2B 善2济溢一2蹦四2>驾prin tf("%2d%21s%15s%n",logm-1.logid,logm-1.logdate,logm-1.log note,logm.charge,logm-1.bala nce);system("pause");break;运行界面3)、修改资金信息(源代码及运行界面)程序代码void updateLog()FILE *tfp;char ch2;struct LogData logM

8、AX;int t,n,m=0;if(tfp=fope n("”,"a+")=NULL)prin tf("不能打开文件! n");exit(0);while(!feof(tfp)if(fread(&logm,LEN,1,tfp)=1)m+;fclose(tfp);if(m=0)printf(" 没有找到该记录 !n");return;elseID:");printf(" 请输入你要修改的记录的scanf("%d",&n);for(int i=0;i<m;i+)if(

9、n=logi.logid)t=i;if(t=m)printf(" 没有找到该记录 !n");return;printf(" 编号 tt 日期 tt 说明 tt 费用 tt 余额n");printf("%2d%21s%15s%n",logt.logid,logt.logdate,logt.lognote,logt.charge,logt.balance);printf(" 是否对该记录进行修改( Y/N): ");scanf("%s",ch);if(strcmp(ch,"Y")

10、=0|strcmp(ch,"y")=0)printf(" 请输入以下信息 .nn");printf(" 日期(格式: <2000-01-01> ) :");scanf("%s",&logt.logdate);printf(" 说明: ");scanf("%s",&logt.lognote);printf(" 费用(收入为+,支出为 -) :");scanf("%lf",&logt.charge);lo

11、gt.balance=logt-1.balance+logt.charge; if(tfp=fopen("","w")=NULL) printf(" 不能打开文件! n");exit(0);for(int j=0;j<m;j+)logj.bala nce=logj-1.bala nce+logj.charge;if(fwrite( & logj,LEN,1,tfp)!=1)printf("不能保存! n");fclose(tfp);return;elseprin tf("该记录修改成功!n&

12、quot;);fclose(tfp);system("pause");fclose(tfp);运行界面(修改、修改后)六:实验小结:此次课程设计,将上学期课本上所学的内容应用到本次实践当中,使我更加清楚的理解并掌握了C语言部分内容,通过一些错误使我更加深刻的认识到C语言程序的严谨性。此次实践内容的难点是“修改函数”与其他函数之间的相互影响, 记录内容被修改后,其他函数的相关内容也要相应的随之改变, 由于 缺乏实践经验,在编程中感觉此处有些难度。幸运的是,在老师的指 导之下,明白了,其他函数中相应更改的内容,要在写入文件前,将 内容修改,然后再写入文件。于是问题得以解决。由于目前知识水平的限制,仅仅是完成了各功能的实现,然而代 码编写的还不够优化,看起来有些繁杂。代码的质量有待于改进。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1