概要设计与详细设计
设计大概的框架:搭建好每个功能的函数框架,搭建好后对函数进行一个个进行修改并实现特定的功能。
实现的目标:运行动态分配的原则,做到不浪费内存,并且能够在关闭文件后数据不丢失。
主函数main的逻辑:先用第一个循环保持第一个界面的重复存在,里面嵌套另一个循环保持登录后功能界面的重复存在,并根据返回的值执行相应的功能。
用到的主要方法:结构体的操作,文件的操作、数组的动态分配。
对应相应的函数实现思想如下:
1. int Menu1(); //实现运行时出现的第一个界面,返回要操作的功能序号。
2. int Register(); //运用fwrite向文件末尾加入数据结构
3. int foution(int,struct People *); //登陆时运行的界面,返回要操作的功能序号
4. void foution_yue(int,struct People *); //查询余额功能,引用人物的编号并输出相应的数据
5. void foution_password(int,int,struct People *); //修改密码,引用人物编号后对其密码数据进行修改。
6. int Login(int,struct People *); //通过传入总的结构体数量,用for循环遍历总的结构体进行判断帐号与密码是否相符。
7. void foution_ck(int,int,struct People *); //传入人物编号后,修改该人物的相应数据
8. void foution_swap(int,int,struct People *); //与登录实现方法基本一样,找到另外一个人的编号,修改它的余额数据,原先帐号就减掉这个金额的数量。
9. void foution_quKuang(int,int,struct People *); //修改人物的余额数据
10. int file_size(); //用fseek和ftell函数来求数据的字节数。然后Main函数里求结构体的数量,用于分配相应的空间。
11. void save(int,struct People *); //每次修改完数据后,把数据写入新的文件,再替换掉原来的文件,便于在关闭程序后,下次打开程序ÿ