栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c语言小游戏程序之弹跳小球的实现代码

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c语言小游戏程序之弹跳小球的实现代码

现在说一下其中一个最简单的小程序:弹跳小球

———————————————LINE————————————————

首先我们知道,在窗口的坐标系原点是在窗口左上角的,如图所示

                      

然后我们如果想在这个坐标系里面的某个点上画出一个小球,那么它的坐标系应该就是这样的

                      

转换到c语言的思维的话:X0既是打印出X0个“n”,Y0既是打印出Y0个空格!!!!

SO

代码如下

#include 
#include 
 
int main()
{
 
	int i,j;
 int x = 30;
 int y = 10;
 
		system("cls");
	 
		for(j=0;j

↓↓↓↓编译好的效果就像这样↓↓↓↓

                        

如果想让小球往上(往下)运动要怎么办呢?

我们看前面的那个图就可以知道,只要X轴保持不变,Y轴往上做减法就可以完成,所以

#include 
#include 
 
int main()
{
 
	int i,j;
 int x = 30;
 int y = 10;
 
	for(int z=10;z>=y;y--)
	{
		system("cls");
	 
		for(j=0;j

从运行效果中可以知道,小球会一直往上运动,没有停止

                  

 为什么呢?

因为我们没有设定边界,所以球碰到边缘也不会停止

所以我们在程序中加入两个变量:顶部和底部

int TOP = 1;
int Bottom = 10;

 并且规定当小球达到窗口的顶部和底部时做反方向运动

但在做反方向运动时,需要有个和正常运动相反的速度,所以加入一个变量:速度

int speed = 1;

在正常运动时,speed变量为正数,当触碰边缘时,speed变量为负数,使得小球反方向运动

int speed =1;
 
if(y > Bottom || y < TOP)
		{
			speed = -speed;
		}
 
		y = y - speed;

根据效果图可知,小球在做上下来回跳动

                    

由此可知,如果想上下左右跳动,只需在Y轴上也增加左右边界,使得触碰到左右边界的时候小球做相反方向运动,即可完成小程序的初步效果,实现出小球来回跳动的效果。

源码如下

#include 
#include 
 
int main()
{
 
	int i,j;
 int x = 30;
 int y = 10;
 
	int TOP = 1;
	int Bottom = 10;
 
	int Left = 0;
	int Right = 50;
 
	int speed_x = 1;
	int speed_y = 1;
 
	while(1)
	{
		
		if(y>Bottom || yRight)
		{
			speed_x = -speed_x;
		}
 
		x = x - speed_x;
		y = y - speed_y;
 
		system("cls");
	 
		for(j=0;j

PS:如果觉得小球跳动速度太快,可以添加一些延时代码令小球速度减缓,具体可自行百度

到此这篇关于c语言小游戏程序之弹跳小球的实现代码的文章就介绍到这了,更多相关c语言弹跳小球内容请搜索考高分网以前的文章或继续浏览下面的相关文章希望大家以后多多支持考高分网!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/61083.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号