第9章模块化设计.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章模块化设计

第9章 模块化开发;自顶向下的分解 模块划分 库的设计与实现 库的应用;;例子:猜硬币的游戏 ;顶层分解 ;int main() { prn_instruction(); play(); return 0; };prn_instruction的实现 ;play函数的实现 ;play函数的细化;void play() { int coin ; char flag = Y; srand(time(NULL)); //设置随机数种子 while (flag == Y || flag ==y) { coin = rand() * 2 / (RAND_MAX+1); //生成扔硬币的结果 if (get_call_from_user() == coin) cout 你赢了; else cout 我赢了; cout \n继续玩吗(Y或y)?; cin flag; } };get_call_from_user的实现 ;;自顶向下的分解 模块划分 库的设计与实现 库的应用;下面的三个文件同属于一个工程文件,指出下面程序的执行结果;模块划分 ;石头、剪刀、布游戏 ;第一层的分解 ;第一层的分解 ??伪代码表示;函数抽取;模块划分 ;枚举类型的定义 ;Select模块的设计;Compare模块的设计;print模块的设计;print模块的进一步考虑;;模块划分 ;怎样解决多模块的函数声明和预处理命令;头文件的设计;头文件的格式;石头、剪子、布游戏的头文件 ;主模块的实现;while((player_choice = selection_by_player()) != quit) switch(player_choice) { case paper: case rock: case scissor: machine_choice = selection_by_machine(); result = compare(player_choice, machine_choice); report(result); break; case game: prn_game_status(); break; case help: prn_help(); break; default: cout PROGRAMMER ERROR!\n\n; exit(1); } prn_game_status(); return 0; };select模块的实现 ;p_r_s selection_by_player() { char c; p_r_s player_choice; prn_help(); //显示输入提示 cout please select: ; cin c; switch(c) { case p: player_choice = paper; cout you are paper. ; break; case r: player_choice = rock; cout you are rock. ; break; case s: player_choice = scissor; cout you are scissor. ;break; case g: player_choice = game; break; case q: player_choice = quit; break; default : player_choice = help; break; } return player_choice; };Compare模块的实现 ;Print模块的实现 ;void report(outcome result) {switch(result) { case win: ++win_cnt; cout You win. \n; break; case lose: ++lose_cnt; cout You lose.

文档评论(0)

cbf96793 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档