将蛇活动的区域设定为整数,比如100×200的矩形区域,再将这个大区域划分为小区域,每个区域的大小为5×5大小。蛇的每一节也设定为5×5大小,蛇每次移动的距离为5。这种这设定都是整数,那么蛇头的坐标怎么会出现小数?食物的坐标使用随机数生成,随机数确实是小数,但生成坐标后经过取整,也是整数,根本就不会出现小数之间的比较。
你是怎么判断蛇头坐标跟食物坐标一样的,浮点数的判断,要加精度的哦,比如判断a是否等于b,可以用fabs(a - b) < 1e-6来判断,是能无限接近
于0,不能准确等于0
我看了一下你的程序结果,坐标是小数,好像是设置有些问题。窗口坐标和尺寸的用像素表示就不会出现小数,因为像素必须是整数。你可能将窗口尺寸用其他单位表示了。你在属性栏,将窗口尺寸模式改为像素表示,就好了。