个人资金账户管理.docx

上传人:b****6 文档编号:11959647 上传时间:2023-06-03 格式:DOCX 页数:8 大小:16.19KB
下载 相关 举报
个人资金账户管理.docx_第1页
第1页 / 共8页
个人资金账户管理.docx_第2页
第2页 / 共8页
个人资金账户管理.docx_第3页
第3页 / 共8页
个人资金账户管理.docx_第4页
第4页 / 共8页
个人资金账户管理.docx_第5页
第5页 / 共8页
个人资金账户管理.docx_第6页
第6页 / 共8页
个人资金账户管理.docx_第7页
第7页 / 共8页
个人资金账户管理.docx_第8页
第8页 / 共8页
亲,该文档总共8页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

个人资金账户管理.docx

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

个人资金账户管理.docx

个人资金账户管理

实验报告

实验一:

个人资金账户管理

 

姓名:

****

学号:

***********

班级:

*********

 

实验时间:

****/**/**-****/**/**

 

 

一:

实验名称:

个人资金账户管理

二:

实验环境:

一台安装有程序的电脑。

三:

实验目的

(1)培养和锻炼对具有一定复杂度和规模的问题的分析与求解能力。

(2)掌握程序设计的综合方法,能综合应用各种数据类型实现较复杂数据的存储。

(3)培养良好的C程序设计风格与代码规范意识。

四:

实验内容:

用C语言编程,实现对个人资金帐户的管理。

五:

实验步骤:

(实验设计,关键代码。

实验结果需截图)

1、总体程序框图

2、各模块程序流程图

1)、主函数(程序流程图及运行界面)

主函数程序流程图

简要说明:

该功能主要是给用户显示一个功能菜单界面。

主函数运行界面

2)、录入资金信息(源代码及运行界面)

程序代码

voidaddNewLog()

{

FILE*tfp;

intm=0;

charch[2];

structLogDatalog[MAX];

if((tfp=fopen("","ab+"))==NULL)

{

printf("不能打开文件!

\n");

exit(0);

}

while(!

feof(tfp))/*统计记录的条数*/

if(fread(&log[m],LEN,1,tfp)==1)

m++;

fclose(tfp);

if((tfp=fopen("","wb"))==NULL)

{

printf("不能打开文件!

\n");

exit(0);

}

for(inti=0;i

fwrite(&log[i],LEN,1,tfp);/*向指定的磁盘文件写入信息*/

printf("是否添加账户资金信息(Y/N):

");

scanf("%s",ch);

while(strcmp(ch,"Y")==0||strcmp(ch,"y")==0)

{

printf("请输入以下信息...\n\n");

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==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("该记录保存成功!

\n");

m++;

}

printf("是否继续添加(Y/N):

");

scanf("%s",ch);

}

fclose(tfp);

}

运行界面

3)、显示资金信息(源代码及运行界面)

程序代码

voidlistLog()

{

FILE*tfp;

structLogDatalog[MAX];

inti,n,m=0;

if((tfp=fopen("","ab+"))==NULL)

{

printf("不能打开文件!

\n");

exit(0);

}

while(!

feof(tfp))

if(fread(&log[m],LEN,1,tfp)==1)

m++;

fclose(tfp);

printf("请选择:

\n1、查询全部\n2、查询余额\n您的选择是:

");

scanf("%d",&n);

switch(n)

{

case1:

printf("编号\t\t日期\t\t说明\t\t费用\t\t余额\n");

for(i=0;i

printf("%2d%21s%15s%%\n",log[i].logid,log[i].logdate,log[i].lognote,log[i].charge,log[i].balance);

system("pause");

break;

case2:

printf("编号\t\t日期\t\t说明\t\t费用\t\t余额\n");

printf("%2d%21s%15s%%\n",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];

intt,n,m=0;

if((tfp=fopen("","a+"))==NULL)

{

printf("不能打开文件!

\n");

exit(0);

}

while(!

feof(tfp))

if(fread(&log[m],LEN,1,tfp)==1)

m++;

fclose(tfp);

if(m==0)

{

printf("没有找到该记录!

\n");

return;

}

else

{

printf("请输入你要修改的记录的ID:

");

scanf("%d",&n);

}

for(inti=0;i

if(n==log[i].logid)

t=i;

if(t==m)

{

printf("没有找到该记录!

\n");

return;

}

printf("编号\t\t日期\t\t说明\t\t费用\t\t余额\n");

printf("%2d%21s%15s%%\n",log[t].logid,log[t].logdate,log[t].lognote,log[t].charge,log[t].balance);

printf("是否对该记录进行修改(Y/N):

");

scanf("%s",ch);

if(strcmp(ch,"Y")==0||strcmp(ch,"y")==0)

{

printf("请输入以下信息...\n\n");

printf("日期(格式:

<2000-01-01>):

");

scanf("%s",&log[t].logdate);

printf("说明:

");

scanf("%s",&log[t].lognote);

printf("费用(收入为+,支出为-):

");

scanf("%lf",&log[t].charge);

log[t].balance=log[t-1].balance+log[t].charge;

if((tfp=fopen("","w"))==NULL)

{

printf("不能打开文件!

\n");

exit(0);

}

for(intj=0;j

{

log[j].balance=log[j-1].balance+log[j].charge;

if(fwrite(&log[j],LEN,1,tfp)!

=1)

{

printf("不能保存!

\n");

fclose(tfp);

return;

}

else

printf("该记录修改成功!

\n");

}

fclose(tfp);

}

system("pause");

fclose(tfp);

}

运行界面(修改、修改后)

六:

实验小结:

此次课程设计,将上学期课本上所学的内容应用到本次实践当中,使我更加清楚的理解并掌握了C语言部分内容,通过一些错误使我更加深刻的认识到C语言程序的严谨性。

此次实践内容的难点是“修改函数”与其他函数之间的相互影响,记录内容被修改后,其他函数的相关内容也要相应的随之改变,由于缺乏实践经验,在编程中感觉此处有些难度。

幸运的是,在老师的指导之下,明白了,其他函数中相应更改的内容,要在写入文件前,将内容修改,然后再写入文件。

于是问题得以解决。

由于目前知识水平的限制,仅仅是完成了各功能的实现,然而代码编写的还不够优化,看起来有些繁杂。

代码的质量有待于改进。

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2