您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > CD4_计算机实践_《C/C++语言程序设计》_实践报告示例
C/C++程序设计报告-1-计算机实践(C/C++语言)程序设计报告指导教师学号学生姓名专业班级电话成绩二〇〇八年七月一日C/C++程序设计报告-2-一.设计题目题目编号:CZ。题目难度系数:20。题目名称:程序设计对抗赛演示程序。二.题目的意义为了提高学生学习程序设计的兴趣,选拔ACM程序设计队员,开发了这个程序设计对抗赛演示游戏程序。游戏规则为每个选手13张牌,按点数升序规则,每次最多出1张,先出尽手中牌的为胜。三.程序设计功能图程序由10个功能模块组成,功能模块图如下:mainPokerinitPokerwashPokersharepokerplaypokershowcardshowCountAutoplayUserplay各功能模块及参数和变量说明如下:模块名称main模块功能主控函数模块说明初始化、洗牌、发牌、玩牌、计算得分类型变量名初值值域变量说明intCards全部牌intAutocards计算机的牌intusercards游戏者的牌IntI当前局数Intwintimes0[0,3]累计获胜局数intscore0[-13,13]本局得分Intsumscore0[-39,39]累计得分模块名称autoplay模块功能计算机出牌模块说明假设不出牌,查找手中大于桌上牌类型变量名初值值域变量说明intonhand手中的牌intontable桌上的牌inttotable要出的牌C/C++程序设计报告-3-intiOnhand[i]为手中下标为i的牌四.详细设计计算机出牌模块流程图如下:计算机出牌模块程序代码如下:voidautoplay(intonhand[],intontable[],inttotable[]){inti;totable[0]=-1;假设放弃出牌for(i=0;onhand[i]=0;i++)从左侧起巡视手中的牌if(onhand[i]%13ontable[0]%13)如果手中的牌点数大{totable[0]=onhand[i];设该牌为要出的牌break;打断巡视循环}}开始Totable[0]forifTotable[0]结束I++I=0C/C++程序设计报告-4-五.程序运行界面程序运行窗口的截图如下:六.调试、分析及总结调试:输入合法数据(如a,b,c等小写键值),则出对应的牌;输入非法数据(如A,B,C,空格等非法键值),则放弃出牌。一局牌结束后,正确显示累计获胜局数,和累计得分。改进:下一版本应增加容错性,即对A,B,C等大写键值也应正确出牌。并改进出牌策略,优先出点数刚好大过桌面的牌。总结:序号遇到问题解决措施1屏幕宽度限制,点数为10的牌不能全部显示只显示前2个字符2程序设计时牌的花色无法通过键盘直接输入以%c格式字符计算输出收获:通过本次实践,更加熟练的掌握了数组作为参数在函数调用中传递的语法知识。对交换、查找、比较等常用算法也有了更深入的认识。七.参考资料1.崔武子.C程序设计教程[M],清华大学出版社,2003……C/C++程序设计报告-5-八.综合评分以下内容任课教师填写序号考察主项教师评语得分备注1完成题目情况2代码格式规范3题目难度系数4创新性5实验报告文档6平时成绩7成绩合计
本文标题:CD4_计算机实践_《C/C++语言程序设计》_实践报告示例
链接地址:https://www.777doc.com/doc-2905510 .html