- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
语文课件,数学课件,PPT课件,课件,方案计划报告PPT,单元测试,期中考试,期末考试
2 “扫雷”案例:设计-主要数据 雷区内部数据 int totalMine; /* 整个雷区所含的地雷总数*/ int table[ROW][COL]; /* 数组table的每个元素值记录了雷区 对应方块是否有雷:1有雷,0无雷*/ int num[ROW][COL]; /* 数组num的每个元素值记录了雷区 对应方块周围有多少个地雷*/ int flag[ROW][COL]; /* 数组flag的每个元素值记录了雷区 对应方块当前的状态*/ * 2 “扫雷”案例:设计-主要数据 方块(i,j)的状态取值 #define UNFLAG 0 /* 表示该方块还没有被打开或者标记*/ #define FLAGED 1 /* 标记该方块有地雷*/ #define QUESTION 20 /* 表示该方块可能有地雷*/ #define EXPLOD 30 /* 踩到地雷爆炸了*/ #define OPEN 40 /* 一个没有地雷的方块被打开*/ * 2 “扫雷”案例:设计-主要数据 光标当前位置数据 int pi,pj; /* 记录光标的当前位置,初始时光标在(0,0)*/ int di[8]={-1,-1,0,1,1,1,0,-1}; int dj[8]={0,1,1,1,0,-1,-1,-1}; /*相对于当前方块而言,di[8]和dj[8]分别表示了它周围八个 方块的行和列坐标偏移量。它们与当前光标坐标配合使用, 可表示周围的方块,如(-1+pi,0+pj)表示当前方块的 正上方方块的坐标。*/ * 2 “扫雷”案例:设计-主要数据 游戏状态数据 int gameRes; /*记录游戏结束的结果状态,是输出数据的内部形式。 值为0表示按esc键退出游戏;-1 表示游戏失败; 1表示游戏胜利。*/ * 2 “扫雷”案例:设计—功能求精 第1步:写出主程序的基本框架,确定各个内部模块的函数名和参数; 第2步:对“图形初始化”进一步求精; 第3步:对“初始化新游戏”进一步求精; 第4步:对“读入操作信息”进一步求精; 第5步:对“对其他key值进行判断处理” 进一步求精; 第6步:对判断游戏是否胜利进一步求精。 主控模块流程 图形初始化 初始化新游戏 读入操作信息 开始 重新游戏? 关闭游戏,结束 是ESC? 对其他键值进行判断处理 本次游戏结束束? F T T T F F * Outline 软件工程开发方法的介绍 “扫雷”案例的讲解 通讯录范例解析 实践作业要求 * 3 通讯录范例解析 问题描述: 以文件的方式保存用户录入的通讯录数据 供用户查询和使用通讯录信息 功能分析: 记录项的基本属性:姓名、性别、住址、联系电话、电子邮件 等 操作功能: 录入:操作添加一条新的记录项 删除:删除一条已经存在的记录项 * 3 通讯录范例解析 功能分析: 修改:改变记录项的一个或多个属性,并用新的记录项覆盖已经存在的记录项 查找:根据用户输入的属性值查找符合条件的记录项。 通讯录数据以文件形式存储在磁盘上,根据实际需要定义文件的存储格式;在程序运行中需要对文件进行读取操作。 程序中还要对输入数据的容错性进行检查,可以保证通讯录数据的合法性。 * 3 通讯录范例解析 设计: 程序总体结构: 输入输出模块:人机交互,包括程序界面显示、用户输入响应、结果输出等 管理模块:管理模块从输入输出模块读取用户命令并进行相应的操作,包括录入、删除、修改、查找、列表等 文件操作模块:进行存储文件的读写 * 3 通讯录范例解析 模块结构图 输入输出终端 输入输出模块 管理模块 文件操作模块 存储文件 用户输入 系统输出 文件写入 文件读出 * 3 通讯录范例解析 通讯录 界面设计 : * 3 通讯录范例解析 数据结构设计: struct myrecord{ unsigned int num; unsigned int group; char name[MAXLEN+1]; char gender; date birthday; char address[MAXLEN+1]; char phone[MAXLEN+1]; char email[MAXLEN+1]
您可能关注的文档
最近下载
- 2023-2024学年辽宁省大连市沙河口区八年级(上)期末数学试卷+答案解析.pdf VIP
- 统编版(2024)七年级下册道德与法治11.1《法不可违》教案 .pdf VIP
- 小学生古诗词大赛试题(附答案).docx VIP
- GPIR复合外模板现浇混凝土保温系统建筑构造.pdf VIP
- 中小学校长选拔笔试试题及参考答案.docx VIP
- 全国计算机等级考试教程二级WPS Office高级应用与设计:电子表格的创建与编辑PPT教学课件.pptx VIP
- 黔西南州企业融资难融资贵主要情况反馈.doc VIP
- 垂径定理练习.3 垂径定理练习.doc VIP
- (已压缩)关于建筑设计防火的原则规定(1960)(OCR).pdf VIP
- 工业与民用建筑抗震设计规范TJ11-78.pdf VIP
文档评论(0)