个人资金账户管理(实验报告)_第1页
个人资金账户管理(实验报告)_第2页
个人资金账户管理(实验报告)_第3页
个人资金账户管理(实验报告)_第4页
个人资金账户管理(实验报告)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、程序设计与实践实验报告实验一:个人资金账户管理 姓名: * 学号: * 班级: *实验时间:*/*/*-*/*/* 推荐精选一:实验名称:个人资金账户管理二:实验环境: 一台安装有VC6.0程序的电脑。三:实验目的(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("cashbox.dat","ab+")=NULL)printf("不能打开文件!n");推荐精选exit(0);while(!feof(tfp) /*统计记录的条数*/if(fread(&logm,LEN,1,tfp)=1)m+;fclose(tf

3、p);if(tfp=fopen("cashbox.dat","wb")=NULL)printf("不能打开文件!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(&quo

4、t;请输入以下信息.nn");printf("日期(格式:<2000-01-01> ) :");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.balan

5、ce=logm.balance+logm.charge;else if(m>0)logm.balance=logm-1.balance+logm.charge;if(fwrite(&logm,LEN,1,tfp)!=1)printf("保存失败!");elseprintf("该记录保存成功!n");m+;printf("是否继续添加(Y/N):");scanf("%s",ch);fclose(tfp);推荐精选运行界面3) 、显示资金信息(源代码及运行界面)程序代码void listLog()FILE

6、 *tfp;struct LogData logMAX;int i,n,m=0;if(tfp=fopen("cashbox.dat","ab+")=NULL)printf("不能打开文件!n");推荐精选exit(0);while(!feof(tfp)if(fread(&logm,LEN,1,tfp)=1)m+;fclose(tfp);printf("请选择:n1、查询全部n2、查询余额n您的选择是:");scanf("%d",&n);switch(n)case 1:printf

7、("编号tt日期tt说明tt费用tt余额n");for(i=0;i<m;i+)printf("%2d%21s%15s%15.0lf%15.0lfn",logi.logid,logi.logdate,logi.lognote,logi.charge,logi.balance);system("pause");break;case 2:推荐精选printf("编号tt日期tt说明tt费用tt余额n");printf("%2d%21s%15s%15.0lf%15.0lfn",logm-1.log

8、id,logm-1.logdate,logm-1.lognote,logm.charge,logm-1.balance);system("pause");break;运行界面3) 、修改资金信息(源代码及运行界面)程序代码推荐精选void updateLog()FILE *tfp;char ch2;struct LogData logMAX;int t,n,m=0;if(tfp=fopen("cashbox.dat","a+")=NULL)printf("不能打开文件!n");exit(0);while(!feof

9、(tfp)if(fread(&logm,LEN,1,tfp)=1)m+;fclose(tfp);if(m=0)printf("没有找到该记录!n");return;else推荐精选printf("请输入你要修改的记录的ID:");scanf("%d",&n);for(int i=0;i<m;i+)if(n=logi.logid)t=i;if(t=m)printf("没有找到该记录!n");return;printf("编号tt日期tt说明tt费用tt余额n");printf

10、("%2d%21s%15s%15.0lf%15.0lfn",logt.logid,logt.logdate,logt.lognote,logt.charge,logt.balance);printf("是否对该记录进行修改(Y/N):");scanf("%s",ch);if(strcmp(ch,"Y")=0|strcmp(ch,"y")=0)printf("请输入以下信息.nn");printf("日期(格式:<2000-01-01> ) :"

11、);推荐精选scanf("%s",&logt.logdate);printf("说明:");scanf("%s",&logt.lognote);printf("费用(收入为+,支出为-) :");scanf("%lf",&logt.charge);logt.balance=logt-1.balance+logt.charge;if(tfp=fopen("cashbox.dat","w")=NULL)printf("不能打开

12、文件!n");exit(0);for(int j=0;j<m;j+)logj.balance=logj-1.balance+logj.charge;if(fwrite(&logj,LEN,1,tfp)!=1)printf(" 不能保存!n");fclose(tfp);return;elseprintf("该记录修改成功!n");推荐精选fclose(tfp);system("pause");fclose(tfp);运行界面(修改、修改后) 推荐精选六:实验小结:此次课程设计,将上学期课本上所学的内容应用到本次实践当中,使我更加清楚的理解并掌握了C语言部分内容,通过一些错误使我更加深刻的认识到C语言程序的严谨性。此次实践内容的难点是“修改函数”与其他函数之间的相互影响,记录内容被修

温馨提示

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

评论

0/150

提交评论