欢迎来到天天文库
浏览记录
ID:39894672
大小:272.50 KB
页数:14页
时间:2019-07-14
《个人资金账户管理(实验报告)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、程序设计与实践实验报告实验一:个人资金账户管理姓名:****学号:***********班级:*********实验时间:****/**/**-****/**/**一:实验名称:个人资金账户管理二:实验环境:一台安装有VC6.0程序的电脑。三:实验目的(1)培养和锻炼对具有一定复杂度和规模的问题的分析与求解能力。(2)掌握程序设计的综合方法,能综合应用各种数据类型实现较复杂数据的存储。(3)培养良好的C程序设计风格与代码规范意识。四:实验内容:用C语言编程,实现对个人资金帐户的管理。五:实验步骤
2、:(实验设计,关键代码。实验结果需截图)1、总体程序框图2、各模块程序流程图1)、主函数(程序流程图及运行界面)主函数程序流程图简要说明:该功能主要是给用户显示一个功能菜单界面。主函数运行界面1)、录入资金信息(源代码及运行界面)程序代码voidaddNewLog(){FILE*tfp;intm=0;charch[2];structLogDatalog[MAX];if((tfp=fopen("cashbox.dat","ab+"))==NULL){printf("不能打开文件!");exit
3、(0);}while(!feof(tfp))/*统计记录的条数*/if(fread(&log[m],LEN,1,tfp)==1)m++;fclose(tfp);if((tfp=fopen("cashbox.dat","wb"))==NULL){printf("不能打开文件!");exit(0);}for(inti=0;i4、ch);while(strcmp(ch,"Y")==05、6、strcmp(ch,"y")==0){printf("请输入以下信息...");printf("日期(格式:<2000-01-01>):");scanf("%s",&log[m].logdate);printf("说明:");scanf("%s",&log[m].lognote);printf("费用(收入为+,支出为-):");scanf("%lf",&log[m].charge);log[m].logid=m+1;if(m==7、0){log[m].balance=0;log[m].balance=log[m].balance+log[m].charge;}elseif(m>0)log[m].balance=log[m-1].balance+log[m].charge;if(fwrite(&log[m],LEN,1,tfp)!=1)printf("保存失败!");else{printf("该记录保存成功!");m++;}printf("是否继续添加(Y/N):");scanf("%s",ch);}fclose(tfp8、);}运行界面1)、显示资金信息(源代码及运行界面)程序代码voidlistLog(){FILE*tfp;structLogDatalog[MAX];inti,n,m=0;if((tfp=fopen("cashbox.dat","ab+"))==NULL){printf("不能打开文件!");exit(0);}while(!feof(tfp))if(fread(&log[m],LEN,1,tfp)==1)m++;fclose(tfp);printf("请选择:1、查询全部2、查询余额9、您的选择是:");scanf("%d",&n);switch(n){case1:printf("编号tt日期tt说明tt费用tt余额");for(i=0;i10、期tt说明tt费用tt余额");printf("%2d%21s%15s%15.0lf%15.0lf",log[m-1].logid,log[m-1].logdate,log[m-1].lognote,log[m].charge,log[m-1].balance);system("pause");break;}}运行界面3)、修改资金信息(源代码及运行界面)程序代码voidupdateLog(){FILE*tfp;charch[2];structLogDatalog[MAX];
4、ch);while(strcmp(ch,"Y")==0
5、
6、strcmp(ch,"y")==0){printf("请输入以下信息...");printf("日期(格式:<2000-01-01>):");scanf("%s",&log[m].logdate);printf("说明:");scanf("%s",&log[m].lognote);printf("费用(收入为+,支出为-):");scanf("%lf",&log[m].charge);log[m].logid=m+1;if(m==
7、0){log[m].balance=0;log[m].balance=log[m].balance+log[m].charge;}elseif(m>0)log[m].balance=log[m-1].balance+log[m].charge;if(fwrite(&log[m],LEN,1,tfp)!=1)printf("保存失败!");else{printf("该记录保存成功!");m++;}printf("是否继续添加(Y/N):");scanf("%s",ch);}fclose(tfp
8、);}运行界面1)、显示资金信息(源代码及运行界面)程序代码voidlistLog(){FILE*tfp;structLogDatalog[MAX];inti,n,m=0;if((tfp=fopen("cashbox.dat","ab+"))==NULL){printf("不能打开文件!");exit(0);}while(!feof(tfp))if(fread(&log[m],LEN,1,tfp)==1)m++;fclose(tfp);printf("请选择:1、查询全部2、查询余额
9、您的选择是:");scanf("%d",&n);switch(n){case1:printf("编号tt日期tt说明tt费用tt余额");for(i=0;i10、期tt说明tt费用tt余额");printf("%2d%21s%15s%15.0lf%15.0lf",log[m-1].logid,log[m-1].logdate,log[m-1].lognote,log[m].charge,log[m-1].balance);system("pause");break;}}运行界面3)、修改资金信息(源代码及运行界面)程序代码voidupdateLog(){FILE*tfp;charch[2];structLogDatalog[MAX];
10、期tt说明tt费用tt余额");printf("%2d%21s%15s%15.0lf%15.0lf",log[m-1].logid,log[m-1].logdate,log[m-1].lognote,log[m].charge,log[m-1].balance);system("pause");break;}}运行界面3)、修改资金信息(源代码及运行界面)程序代码voidupdateLog(){FILE*tfp;charch[2];structLogDatalog[MAX];
此文档下载收益归作者所有