//cout<<"|%12s|%12s%|%9d|%10d|\n",dat.mz,dat.zh,dat.money,dat.statue;//要改
cout<<"------------------------------------------------\n";
cout<<"按任何键返回菜单......\n";
getchar();
break;
}
elseif(feof(pa)!
=0)
{
cout<<"帐号不存在!
\n";
cout<<"按任何键返回菜单......\n";
getchar();
break;
}
}
}
fclose(pa);
}
voidck()/*存款*/
{
FILE*db,*lan;
charzh[20];
charmm[20];
intmoney,i=1;
db=fopen("db.dat","rb");
if(db==NULL)
{
cout<<"还没有一个人申请帐号.\n";
cout<<"输入任何键返回菜单......\n";
//getchar();
gotogl;
}
cout<<"请输入你的帐号:
";
cin>>zh;
cout<<"密码:
";
cin>>mm;
while(!
feof(db))
{
fread(&dat,sizeof(dat),1,db);
if(strcmp(zh,dat.zh)==0&&strcmp(mm,dat.mm)==0)
{
cout<<"请输入你要存款的数额:
";
cin>>money;
strcpy(temp.mz,dat.mz);
strcpy(temp.zh,zh);
strcpy(temp.mm,mm);
temp.money=dat.money+money;
break;
}
i++;
if(feof(db)!
=0)
{
cout<<"帐号不存在!
\n";
cout<<"按任何键返回菜单......\n";
getchar();
gotogl;
}
}
if(strcmp(zh,temp.zh)==0&&strcmp(mm,temp.mm)==0)
{
fclose(db);
lan=fopen("db.dat","wb+");
fseek(lan,i*sizeof(temp),0);
fwrite(&temp,sizeof(temp),1,lan);
rewind(lan);
fclose(lan);
}
cout<<"存款成功!
\n";
cout<<"按任何键返回菜单......\n";
getchar();
gl:
;
}
voidqk()/*取款*/
{
FILE*db,*lan;
charzh[20];
charmm[20];
intmoney,i=1;
db=fopen("db.dat","rb");
if(db==NULL)
{
cout<<"还没有一个人申请帐号.\n";
cout<<"输入任何键返回菜单......\n";
getchar();
gotogl;
}
cout<<"请输入你的帐号:
";
cin>>zh;
cout<<"密码:
";
cin>>mm;
while(!
feof(db))
{
fread(&dat,sizeof(dat),1,db);
if(strcmp(zh,dat.zh)==0&&strcmp(mm,dat.mm)==0)
{
cout<<"请输入你要取款的数额:
";
cin>>money;
if(money>dat.money)
{
cout<<"对不起,您的余额不足!
\n";
cout<<"按任何键返回菜单......\n";
getchar();
gotogl;
}
strcpy(temp.mz,dat.mz);
strcpy(temp.zh,zh);
strcpy(temp.mm,mm);
temp.money=dat.money-money;
break;
}
i++;
if(feof(db)!
=0)
{
cout<<"帐号不存在!
\n";
cout<<"按任何键返回菜单......\n";
getchar();
gotogl;
}
}
if(strcmp(zh,temp.zh)==0&&strcmp(mm,temp.mm)==0)
{
fclose(db);
lan=fopen("db.dat","wb+");
fseek(lan,i*sizeof(temp),0);
fwrite(&temp,sizeof(temp),1,lan);
rewind(lan);
fclose(lan);
}
cout<<"取款成功!
\n";
cout<<"按任何键返回菜单......\n";
getchar();
gl:
;
}
四、调试分析
1使用环境:
VisualC++6.0.
2.操作要求:
程序运行后,用户根据提示输入数字或者是字符以进入相应的功能处理函数。
程序调用建表功能函数后,用户将按照规定的方式输入你所要选用的菜单。
进入相应的功能区。
如果输入的数字或者字符不符合题目要求,则会产生错误结果。
五、使用说明
步骤如下:
1.输入管理员账号:
admin密码:
admin888.
2.出现功能菜单,可输入数字选择相应功能。
如:
申请账号、存款管理、取款管理、查询管理、注销管理、退出系统。
3.如果选择申请账号,则输入名字、账号、密码、确认密码。
账号申请则完成。
4.按照第3步骤完成其他功能。
5最后退出管理系统即可。
六、测试结果
进入管理系统:
七.设计总结
尹柳姿:
在课程设计中问题主要出现在需求分析、程序编码、程序测试这几个阶段。
测试时出现不少错误,要反复的改反复的测试。
由于在课程设计之前没有太多接触软件工程方面的知识,虽然看过一点相关书籍但是理解不够,并不能按要求贯彻到课程设计中去,所以只能按照自己所想写报告。
需求分析中的多方考虑是必不可少的,有了这样的理解才能准确的写出需求报告,这对以后的课程设计是非常重要的.不过这次课程设计也巩固了我这学期所学的知识,同时也激发了我编程的兴趣和热情。
感觉自己进步了不少。
奉星:
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才是真正的知识,才能提高自己的实际动手能力和独立思考的能力。
在设计的过程遇到了各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计,把以前所学过的知识重新温故,巩固了所学的知识。
蒋芳:
在为期不到两周的课程设计中,我体会颇多,学到很多东西,使我加强了对C++的认识,复习了自己以前的知识,自己的逻辑思考能力也提高不少。
从而对MicrosoftVisualC++6.0又有了更深入的认识!
在这次课程设计中,我还懂得了程序开发的一些比较重要的步骤,比如需求分析、总体设计、程序模块设计(含功能需求、用户界面设计、程序代码设计与分析、运行结果)、系统使用说明等。
总之,通过这次课程设计,我收获颇丰,相信会为自己以后的学习和工作带来很大的好处。
最重要的还是激发了我编程的兴趣和热情,让我从一个只懂理论变成了能做一些小型程序,让我对编程更加热爱了。
袁新:
在本次设计中我感觉到设计的关键是对问题的分析,这也是问题的难点。
根据对问题的分析设计函数,指出函数的关系,这也是十分重要的,也是必不可少的一步。
同时也遇到很多其他的问题,比如很多东西不会用或者忘记了,也有可能情况没有考虑全面。
但是只要努力用心解决这些问题,就一定可以把这些问题都消灭掉。
当课程设计做完后,相当于把这部分的知识又复习了一遍,对我十分有益处。
今后,我会更加努力学习编程。