C语言程序设计---家庭财务管理系统
C语言程序设计-家庭财务管理系统 摘 要 本报告介绍了一个运用C语言知识和Microsoft Visual c++ 6.0创建的用于家庭各成员财务情况管理的家庭财务管理系统。在该系统中创建了包含编辑,增加,删除,修改,查找,浏览的功能总列表,创建序号链接各功能列表,输入家庭成员收入信息情况,增加信息,删除信息,修改信息,创建姓名查找便于用户查找个人财务情况,创建合计排序浏览用户可从总体上浏览全家庭财务信息情况。 关键词:C语言, Visual c++ 6.0, 家庭财务管理系统 小组情况 本系统是通过小组全体成员的共同努力,经过分工合作完成的,具体分工如下: 1.合作的工作 需求分析、概念结构设计、逻辑结构设计和报告的草稿通过小组讨论完成。 2.分工 在家庭财务管理系统的总体方案确定之后,小组成员开始分工,独立完成不同的模块及工作。其中 l :负责家庭财务管理系统主函数、总程序的编译连接、报告的撰写排版工作。 l :负责家庭财务管理系统各主要函数及总程序的编译连接。 l :负责家庭财务管理系统增加函数的编译、报告的撰写工作。 l :负责家庭财务管理系统删除函数的编译、报告的撰写工作。 l :负责家庭财务管理系统创建函数的编译工作。 目录 1 绪 论1 2方案设计分析2 2.2.函数设计2 2.3.各函数代码设计及N-S图2 3系统运行情况5 3.1出现的问题5 3.2相关的解决方法5 3.3目前的运行情况5 3.4系统操作说明5 总结7 致谢9 参考文献10 9 1 绪 论 家庭财务管理对于每一个家庭来说有着重要的意义,随着科技的发达,财务的管理由原先的手写账本发展到现今的电脑系统输入并统计,不仅大大减少了时间与精力,也是财务管理更系统化,便捷化,清晰化,减少金钱上的缺失。家庭财务系统主要对家庭的各项财务收支管理进行在计算机上的信息存储和处理,从而简化用户的工作量 本报告设计的家庭财务管理系统主要是负责给家庭成员提供了一个在Windows操作系统上运行的管理平台,家庭财务管理者可以对其成员编号、姓名以及收入、支出构成进行增加、删除、修改,查找等管理操作,还可以对全家庭财务合计排序浏览。 C语言是国内外广泛使用的一种计算机语言,学会使用C语言进行程序设计是计算机工作者的一项基本功。对于我们大学生来说,学习这样一门“C程序设计教程”更是必要的。本课程设计“家庭财务管理系统”就是通过学习《C程序设计》采用Visual C++作为编译环境,是程序编译和运行的。本系统的总体思想基于结构化的程序设计。应用高级语言程序设计中的基本控制结构,如循环和选择,着重实现管理系统的增、删、改、查等典型的管理功能由于主要实现的是管理系统的增、删、改、查等典型功能。程序设计是一门实践性很强的课程,既要掌握概念,又要动手编译,还要上机调试运行,通过这一次的课程设计我们从实践中更进一步的学习和了解C语言,当然由于我们的技术水平有限,在这途中遇到很多问题,程序也未能做到很完美,望见谅! 2方案设计分析 2.1、结构体设计 用于存放每个家庭成员的序号、姓名、收入、支出、合计方面信息。 { struct family { int Number; char Name; float in; float out; float sum; } TmpS[6]; 由于序号、姓名、收入、支出构成用于描述一个有机整体——家庭成员财务信息,为了表明这些字段不是孤立的,而是共同描述一个完整的事物,因此用结构体这种形式来体现。 2.2.函数设计。 为实现家庭财务管理系统创建收支信息文件增加收支信息 删除收支信息 修改收支信息查询收支信息。特设计了(创建)AddRecord(增加);Concellrecork(删除);ModifyByNumber(修改);QueryByName(按姓名查找);SortBySum(合计排序浏览)6个函数。 2.3.各函数代码设计及N-S图。 1、 主函数:main() Switch(choice) 1 put () 2 AddRecord() 3 Concellrecork() 4 ModifyByNumber() 5 QueryByName() 6 SortBySum() Break for(i=0;i<6;i++) 输入家庭成员编号、姓名、收支情况 计算总计(sum=in- out) 打开文件“fam” 将数据写入文件 关闭文件 2、创建函数:() 3增加函数:AddRecord() 输入待插入的家庭成员收支情况 “fam”文件存在 T F 从该文件读出数据并显示出来 退出 确定所要插入的位置t 向文件输入前面t个家庭成员收支数据并显示 向文件输出待输入的家庭成员收支数据并显示 向文件输出待输入的家庭成员收支数据并显示 向文件输出t后面家庭成员收支数据并显示 关闭文件 4、删除函数:Concellrecork() 打开“fam”文件 for(i=0;fread()!=0;i++) 显示读出的数据 关闭“fam”文件 N=1 输入待删除的家庭成员编号 for(i=0;i<6;i++) T TmpS[i].Number==number F for(i=n;i<6;i++) 将第j+1个成员的数据 移到第j个 关闭文件 5、修改函数ModifyByNumber() 打开fam文件 输入需要修改家庭成员的编号 显示需要修改家庭成员信息 重新写入各项信息 向文件输入新信息并显示 关闭文件 6、按姓名查询函数QueryByName() 打开fam文件 输入需要查询家庭成员的编号 显示需要查询家庭成员信息 关闭文件 3系统运行情况 3.1出现的问题。 l 结构体存在重复定义; l 数据的输入与输出结果不一致。 l 删除、修改功能不能如期实现。 3.2相关的解决方法 l 通过不断试验,删除多余结构体; l 查找错误,严格定义变量类型; l 不断的进行调试及改进。 3.3目前的运行情况 针对一系列运行过程中出现的