cout<<"请输入你的指令:
";
cin>>flag;
returnflag;
}
7运行结果及分析
7.1测试数据:
(1)主界面
(2)首先进行开户,创立唯一性账号。
(3)登陆,进入存取款界面。
(4)存款
(5)取款
(6)转账
(7)查看余额及交易历史
7.2测试结果:
代码所执行的功能顺畅运行,余额的计算、交易历史的界面较为清晰合理,没有错误,达到预先设想功能。
7.3时间复杂度分析:
时间复杂度O(n)
7.4改进思想:
本次程序已经是在大家讨论并经过多次修改的程序,但是确实存在着多不足。
其一:
希望可以就交易历史的函数进行修改,让其交易历史的记录规化,程序中的交易历史记录是无序的,希望可以就存入的,取出的,转账的按顺序进行显示;其二:
对交易的时间进行编写,在查看交易历史时,可以看到每次交易的准确时间。
8课程设计总结
本次课程设计是一次谨的实践操作,在设计过程中,根据“课程设计报告容要求”,对组员进行了详细的分工,对设计流程也有详细的规划,需求分析,概要设计以及详细设计,都在与组员的讨论中,有了大概的思路,刚开始就懂得了团队合作的重要性。
在具体的源代码设计中,用到最多的便是之前的C、C++课本,意识到课本中多的知识,还没有学透,在初级的代码设计中,用到最多还是扎实的基础知识。
我分配的任务是三大功能模块,实现存款,取款,转账功能,代码的输入界面较为简单,但是余额的计算与交易历史的保存比较复杂,为了令界面风格更为友好,采用了结构体数组的类型和顺序存储的式,余额的计算最重要的是找到本账户的位置,然后对本账户的余额进行计算,所以在定义函数时,定义了voidGetMoney(intnum),通过num找到本账户的位置account[num],然后对余额进行计算。
交易历史的保存,是将之前的交易历史调出,并把这次操作的数据与之前交易历史合并,把得到的新的交易历史更新到文件UpdateAllfile(account)中,最后将其输出即可,之前我想到的是采用fotream中的open()和close()函数,在每次操作之后,便将其写出,但考虑到这样会出现大量重复的代码,还需要将之前定义的函数重新定义,便打消了这个想法,跟组员的讨论过程中,决定使用现在的程序,这样将数据输出时较为简单。
在两个星期的实践过程中,加深对数据结构知识的理解,同时懂得了在解决实际问题时,只有理论知识是远远不够的,必须在平时加强动手能力,编程是一种重复性与创新性的工作,会出现大量重复代码,关键处又必须能够有闪光点,在程序大致框架的筹建中,要尽可能的想到以后会出现的问题,如果考虑不够全面,那么在编程中,就会出现多问题。
程序的编写会让我们变得更加谨细致,在以后的学习中,我们要发扬这个特性,让它也成为我们所编写程序的特点。
总的来说,课程设计让我有所进步,每一行代码都是需要我们认真思考的,一个符号的错误程序就无法运行,意味着在生活一点小小的瑕疵可能就令我们与成功无缘,生而知之有限,学而知之无涯,希望以后可以设计更加优秀的代码。