第12章 C语言程序开发实例.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章 C语言程序开发实例

第12章 C语言程序开发实例 本章要点: 应用程序设计步骤 C语言综合实例的开发 * 学习方法建议:   通过C语言综合实例的开发,掌握C语言应用程序开发的一般步骤,重点掌握结构化程序设计的思想。 进行应用程序设计时一般遵循以下步骤: 1.可行性研究 在应用程序开发之前,要对需要解决的问题进行定义,对问题的性质、目标和规模进行确切的了解。同时要研究这个问题是否值得解决,也就是对要开发的系统进行可行性研究,可行性研究的目的就是用最小的代价在尽可能短的时间内,确定问题是否能够解决,从而确定问题是否值得解决。 2.需求分析 需求分析是指在可行性研究基础上进行更细致的分析工作,需求分析过程实际上是一个调查研究、分析综合的过程,是一个抽象思维的过程。需求分析阶段务必详细、具体地理解用户要解决的问题,明确系统必须做什么,系统必须具备哪些功能,把来自用户的这些信息加以分析提炼,最后从功能和性能上加以描述。还要通过分析实际问题,了解已知或需要的输入数据、输出数据,需要进行的处理。 12.1 应用程序设计步骤 3. 系统设计 系统设计是把软件需求变换成为软件的具体方案,可分为总体设计和详细设计。 总体设计通常用结构图描绘程序的结构,以确定程序由哪些模块组成以及模块间的关系,即解决怎样做的问题。 详细设计就是给出问题求解的具体步骤。这个阶段主要是对模块过程的说明,这种说明可以使用图形、表格、公式或文字来描述。不管使用哪种表达方式,都应当给编码人员提供足够准确的信息,尽量避免歧义性,根据它可以很快地写出源程序。 4.软件编码 软件开发的最终目标是把软件设计结果翻译成计算机能够理解和执行的形式,也就是选择适当的程序设计语言,把详细设计的结果描述出来,即形成源程序。 5.软件测试 可以选择若干具有代表性的输入数据,其中包括合理的数据(包括边界值)和不合理的数据,进行测试,尽量使程序中的每个语句和每个分支都被检查到,以期待发现程序中的错误的漏洞,然后针对出现的问题,对算法和程序进行修改。 6.文档编制 开发者编制程序文档的主要目的是为了让别人了解自己编写的算法和程序。文档包括源程序代码、算法(程序)的流程图、开发过程中各阶段的有关记录、算法(程序)的正确性证明、程序的测试结果、对输入/输出的要求及格式的详细描述等。 12.2.1 学生成绩管理系统 1.案例描述 开发一个学生成绩管理系统,用于对班级的学生成绩进行处理。学生的基本信息包括学号、姓名、三门课的成绩和平均分。 2.设计分析 本系统是一个学生综合管理系统,能够完成对学生成绩的综合管理,本系统具备如下的基本功能:输入学生基本信息、追加、修改、删除、查找、浏览学生和排序等功能。 12.2 应用程序设计实例 本系统由9个模块组成,结构图如图12-1所示。 学生成绩管理系统 输入模块 追加模块 修改模块 删除模块 浏览模块 查找模块 排序模块 退出模块 3.设计方案 (1)定义数据结构 由于学生的基本数据信息包括学号、姓名、3门课成绩和平均分,所以决定采用结构体类型来描述,具体定义如下: struct student { char num[6]; /*学号*/ char name[8]; /*姓名*/ int score[3]; /*3门课成绩*/ float avr; /*平均分*/ } (2)主界面设计。为了程序界面清晰,主界面采用菜单设计,便于用户选择执行,如图12-2所示。 (3)输入数据模块(函数名为creat)。本模块功能是从键盘输入N个学生数据(包括学号、姓名、3门课成绩)并存放到磁盘文件“stud”中,“stud”为二进制数据文件,用函数fread()和fwrite()完成读写操作。 (4)追加数据模块(函数名为add)。通过该模块可以随时添加多个学生的信息。 (5)修改学生信息模块(函数名为modify)。当输入数据出现错误时,可以使用修改学生信息模块进行修改,可以对每个学生的学号、姓名、成绩进行修改。 (6)删除学生信息(函数名为del)。用来删除某个学生的信息。 (7)浏览学生信息模块(函数名为show)。当每次进行一项操作后,可以通过调用该模块来查看操作情况,也可以单独浏览学生基本信息。 (8)查找学生信息模块(函数名为search)。本模块可以通过姓名查找某个学生的基本信息。 (9)排序模块(函数名为sort)。可按照学生的平均分进行降序排序。 4.实现程序 略 12.2.2 单位员工通讯录管理系统 1.案例描述 为某个单位建立一个员工通讯录管理系统,可以方便查询每一个员工的办公室电话、手机号。其功能包括通讯录链表的建立、员工通讯信息的查询、修改、插入与删除、以及整个通讯录链表的输出。 2.设计分析

文档评论(0)

精品文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档