编写贪吃蛇这个小游戏花了几周,其实没有太大困难,只要明确目的和流程,很快就能实现。
和竞赛解题不太一样。其中并没有用到什么特别难的算法,而且线程部分也不是自己写的。软件的编写和竞赛解题有很多不同。软件是产品,注重创新,要了解用户需求,要对用户友好,有吸引力。大型软件软件也不可能一个人写完,多写注释、多用函数很重要。在竞赛中,要找到最优算法,常常想一些非常规的东西,容易使代码难以理解。
这次编写贪吃蛇,主要注意几点:
1.要获取按键,让玩家控制蛇的方向,用一个简单的函数,根据ascii码区分按键。
2.要将蛇的轨迹显示出来,我选择用“#”表示,其中用到了gotoxy函数,定位光标。至于蛇的轨迹,就保存在队列里面。每次更新只删除蛇的尾部一个,在蛇头部增加一个“#”。在处理坐标时,要用循环数组。
3.用一个随机函数,让食物出现的位置随机化。
随手注释、多些函数、让代码更容易理解,这有助于程序员更好地合作。