案例

描述

知识点

贪吃蛇游戏

“贪吃蛇”游戏是一款简单的益智类游戏,使用上下左右键控制“蛇”的移动方向,寻找“食物”,每吃一个“食物”就能得到一定的积分,并且“蛇”的身子越来越长,难度越来越大,“蛇”不能碰墙和障碍物也不能咬到自己的身体。当“蛇”违反以上规则时游戏结束。

该游戏包含以下功能。

· 人机操控平台:启动程序后,系统提供给用户一个操作界面,以便用户有效地操作游戏。

· 选择游戏难度:贪吃蛇游戏需要用户选择不同的难度,难度主要体现在蛇的移动速度上。

· 游戏绘制:绘制“墙”、障碍物、“食物”和“蛇”,并且输出游戏分数。

· 游戏操作和得分:使用上下左右键控制蛇的移动,寻找食物,食物分为普通食物和奖励性食物,吃普通食物蛇身会变长,分数增加,吃到奖励性食物,蛇身不变长,分数增加,但是奖励性食物有时间限制。

函数

数组

指针

结构体

宏定义

链表

文件

求任意多边形间的交集

任意二维多边形求交集是计算几何中较为基础的算法之一,其在很多场景下都有应用,如计算机图形学中的消隐处理,地理信息系统中的空间叠置分析、缓冲区分析应用等。

该程序要求如下:

· 可以通过鼠标点击的方式所见即所得地输入多边形

· 算法能够处理凸多边形和凹多边形

· 输入的多边形不存在自交和退化的情况

· 程序应能够灵活地处理不同的输入和输出

可参考《一个有效的多边形裁剪算法》 [2] 的实现。

函数

链表

函数指针

结构体