- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章C语言程序开发实例
* * 第11章 C语言应用程序开发实例 下一页 返 回 本章要点 C语言应用程序设计方法 结构化程序设计思想 学习方法建议 学习本章内容时,首先要掌握应用程序设计的步骤,这是程序开发的基础,同时还要掌握结构化程序设计的基本思想,由于本章内容是对本书内容的一个综合过程,所以学习本章之前,要对前面的内容做一个较好的复习。在此基础上结合本章的语法点,才能进行程序代码的编写。 目 录 11.1 应用程序设计步骤 11.2? 应用程序设计实例 返 回 上一页 11.3? 本章小结 11.1 应用程序设计步骤 下一页 返 回 程序设计就是针对给定问题进行设计、编写和调试计算机程序的过程。作为一名程序设计者,要想设计好一个程序,除了掌握程序设计语言本身的语法规则外,还要学习程序设计的方法和技巧,并通过不断的实践来提高自己的程序设计能力。 进行应用程序设计时一般遵循以下步骤: 1.可行性研究 在应用程序开发之前,要对需要解决的问题进行定义,对问题的性质、目标和规模进行确切的了解。同时要研究这个问题(要开发的应用程序)是否值得解决,也就是对要开发的系统进行可生性研究,可行性研究的目的就是用最小的代价在尽可能短的时间内,确定问题是否能够解决,从而确定问题是否值得解决。 2.需求分析 软件需求分析也叫软件要求分析。它是在可行性研究阶段的分析基础上进行更细致的分析工作,需求分析过程实际上是一个调查研究、分析综合的过程,是一个抽象思维的过程。软件需求分析阶段务必详细、具体地理解用户要解决的问题,明确为了达到用户要求和系统的需求,系统必须做什么,系统必须具备哪些功能,把来自用户的这些信息加以分析提炼,最后从功能和性能上加以描述。还要通过分析实际问题,了解已知或需要输入 的数据、输出的数据,需要进行的处理。 对初学者而言,关键是处理好需求分析和数据处理这两方面的工作。 3. 系统设计 系统设计是把软件需求变换成为软件的具体方案,可分为总体设计和详细设计。 总体设计通常用结构图描绘程序的结构,以确定程序由哪些模块组成以及模块间的关系,即解决怎样做的问题。 详细设计就是给出问题求解的具体步骤。这个阶段主要是对模块过程的说明,这种说明可以使用图形、表格、公式或文字来描述。不管使用哪种表达方式,都应当给编码人员提供足够准确的信息,尽量避免歧义性,根据它可以很快地写出源程序。 4.软件编码 软件开发的最终目标是把软件设计结果翻译成计算机能够理解和执行的形式,也就是选择适当的程序设计语言,把详细设计的结果描述出来,即编写源程序。 5. 软件测试 为了保证投入运行的软件系统的正确性,必须作好软件系统的测试工作。软件测试的目的就是为了发现错误,纠正错误,直到得出正确的结果。在测试过程中应该精心选择典型数据进行测试,避免因测试数据不妥而引起的计算偏差和运行错误。 6. 建立文档资料 整理分析程序结果,建立相应的文档资料,以便日后对程序进行维护或修改。 上一页 下一页 返 回 上一页 下一页 返 回 开发一个学生成绩管理系统,用于对班级的学生成绩进行处理。每个学生的信息包括学号、姓名和三门课的成绩。 本系统是一个综合系统,完成对学生成绩的综合管理,需要具备如下的基本 功能:输入学生基本信息、添加记录、修改数据、删除记录、查询学生信息、浏览学生信息、对学生成绩进行排序等的基本操作。 1.系统功能模块 本系统由8个模块组成,结构图如图11.1所示。 11.2 应用程序设计实例 学生成绩管理系统 输入模块 追加模块 修改模块 删除模块 浏览模块 查找模块 排序模块 退出模块 图 11.1 模块组成结构图 上一页 下一页 返 回 2.各模块功能简介 (1)定义数据结构 假设学生的数据包括学号、姓名和3门课成绩,所以采用结构体类型来描述,具体定义如下: struct student {char num[6]; /*学号*/ char name[8]; /*姓名*/ int score[3]; /*成绩*/ float av; /*平均值*/ } (2)录入模块(函数名为creat)。本模块功能是从键盘输入N个学生的数据(包括学号、姓名、3门课成绩)到结构体数组stu中,并求出每个学生成绩的平均值,最后调用保存函数(save)将结构体数组stu中的所有元素保存到二进制数据文件stud中。数据录入界面如图11.2所示。 11.2 数据录入界面 (3)追加模块(函数名为add)。通过调用该模块可以添加多个学生的信息,添加过程中求出每个学生成绩的平均值,添加后调用保存函数(save),将添加的记录保存到stud文件中。追加数据界面如图11
文档评论(0)