- 博客(7)
- 收藏
- 关注
原创 【个人项目数独】6、代码分析与单元测试
代码分析对Sudoku项目运行代码分析结果如下:由于在编写代码时考虑的比较多,所以经过代码分析只有一个关于strlen函数的warning,经了解,strlen()的返回值类型是unsinged int,而我将它赋给了int,类型不匹配。稳妥起见可以做一个强制类型转换。警告消除????妥了单元测试在同一解决方案下新建一个测试项目,名为UnitTest1,然后看了一下官网的文档和博客大致...
2020-01-18 14:06:36
295
原创 【个人项目数独】5、性能分析与改进
性能分析生成1000000个数独时的性能分析图:查看函数消耗情况:由于在编码是已经采用了比较节省时间的方式,比如把第一行的40320种情况全都预先储存起来,以及在各行交换生成多种终局时手动记录下要交换的行的索引,因此通过性能分析图可以看到,主要的时间花费在了写入文件的的fprintf函数上,因此考虑对此进行优化。首先我想到的是将逐个输出改为一次输出一整行的形式,即由for (int j...
2020-01-18 09:30:51
251
原创 【个人项目数独】4、编码
代码编写经过这几天的努力,代码基本完成,详请参阅GitHub(地址见第一篇博文)main函数main函数的实现较为简单,简单描述一下:首先,对输入参数不是两个,以及第一个参数不是"-c"或"-s"的,会提示“输入不合法”并结束运行,对于"-c"参数,则首先判断第二个参数是不是数字,然后会判断数字是否在1~1000000之间,若满足要求则调用CreateSudoku进行终局的生成。对于"-...
2020-01-11 22:16:50
223
原创 【个人项目数独】3、设计与实现
设计阶段程序流程如下整个项目程序包括5个文件:main,实现对命令行参数的处理以及输入不合法时的反馈CreateSudoku,生成指定数目的数独终局WriteFile,将数独终局写入指定文件中ReadFile,从指定文件中读出数独SolveSudoku,求解指定数独函数关系main函数对命令行参数进行处理之后,若为“-c”则调用CreateSudoku函数进行数独终局的生成...
2020-01-11 21:01:35
321
原创 【个人项目数独】2、需求分析与思考
需求分析我们都多少了解过数独游戏,数独是一种运用纸、笔进行演算的逻辑游戏。玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫(3*3)内的数字均含1-9,不重复。数独盘面是个九宫,每一宫又分为九个小格。在这八十一格中给出一定的已知数字和解题条件,利用逻辑和推理,在其他的空格上填入1-9的数字。使1-9每个数字在每一行、每一列和每一宫中都只出现一次。...
2019-12-29 01:04:45
773
原创 【个人项目数独】1、PSP表格记录
项目GitHub地址软件工程基础个人项目数独项目开始1、PSP表格记录估计将在程序的各个模块的开发上耗费的时间PSP2.1Personal Software Process Stages预估耗时(分钟)实际耗时(分钟)Planning计划10• Estimate• 估计这个任务需要多少时间10Development开发1800• ...
2019-12-24 14:26:35
363
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人