本文实例为大家分享了C语言实现弹跳球游戏的具体代码,供大家参考,具体内容如下

#include

#include

int main()

{

// 球的坐标

int pos_x,pos_y;

//球坐标的变化

int x =0;

int y = 5;

// 定义一个球的速度

int velocity_x=1;

int velocity_y=1;

//定义一个球运动的范围

int top=0;

int botton=20;

int lift=0;

int right=20;

//让球循环来回的跳动

while(1)

{

//x轴的速度变化

x = x + velocity_x;

y = y +velocity_y;

//清屏,用于每次绘图,清除上一次球的位置。

system("cls");

for (pos_x=0 ; pos_x < x; pos_x ++)

{

// y轴每行画换行符。

printf("\n");

}

for ( pos_y =0; pos_y

{

// x轴进行空格即可

printf(" ");

}

//利用速度velocity来控制球移动的方向

if( x == top || x == botton) //如果球的x坐标碰到了最顶端-1,向下运动。碰到最低端20则,向上运动。

{

velocity_x =-velocity_x; //改变正负数,则为改变方向

}

if( y == lift || y == right) //如果球的x坐标碰到了最zuo端-1,向下运动。碰到最you端20则,向上运动。

{

velocity_y =-velocity_y; //改变正负数,则为改变方向

}

//每次清屏后,进行绘0。

printf("0 \n");

}

system("pause");

}

该段落为球弹跳的基本逻辑,可以进行直接粘贴复制。编译运行即可看到效果。

代码已经写好注释。

再为大家一段简单的控制台弹跳小球实现代码,感谢原作者的分享:

#include

#include

#include

#include

// 全局变量

int x,y; //小球坐标

int velocity_x,velocity_y ; //速度

int left,right,top,bottom; //边界

void gotoxy(int x,int y) //光标移动到(x,y)位置

{

HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);

COORD pos;

pos.X = x;

pos.Y = y;

SetConsoleCursorPosition(handle,pos);

}

void HideCursor() // 用于隐藏光标

{

CONSOLE_CURSOR_INFO cursor_info = {1, 0}; // 第二个值为0表示隐藏光标

SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);

}

void startup() // 数据初始化

{

x = 1;

y = 5;

velocity_x = 1; //速度方向

velocity_y = 1;

left = 0;

right = 30;

top = 0;

bottom = 15;

HideCursor(); // 隐藏光标

}

void show() // 显示画面

{

int i,j;

for (i=0;i<=bottom;i++)

{

for (j=0;j<=right;j++)

{

if((i==x) && (j==y))

{

printf("o"); //打印小球

}

else if ((i==0)||(i==bottom)||(j==0)||(j==right)) //打印边界

{

printf("#");

}

else printf(" ");

}

printf("\n");

}

}

void automation() // 与用户输入无关的更新

{

x = x + velocity_x;

y = y + velocity_y;

if ((x==top)||(x==bottom))

{

velocity_x = -velocity_x;

printf("\a");

}

else if ((y==left)||(y==right))

{

velocity_y = -velocity_y;

printf("\a");

}

Sleep(100); //调低小球速度

}

int main()

{

system("color 2f"); //改变控制台颜色

startup(); // 数据初始化

while (1) // 游戏循环执行

{

gotoxy(0,0); // 清屏

show(); // 显示画面

automation(); // 与用户输入无关的更新

}

return 0;

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

小球弹跳c语言实现实验报告,C语言实现简单弹跳球游戏相关推荐

  1. c语言四则运算实验报告,c语言四则运算实验报告.doc

    c语言四则运算实验报告.doc 课程编号 1300050027 得分教师签名批改日期深 圳 大 学 实 验 报 告课程名称 C语言实验 实验名称 100以内的四则运算游戏 学 院 信息工程学院 指导教 ...

  2. c语言初步实验报告,c语言实验报告(大一c语言实验报告答案)

    哪位帮我一下啊,我这有个作业,要写C语言程序设计实验报告,包括五个部. 最低0.27元/天开通百度文库会员,可在文库查看完整内容> 原发布者:aming7728081 计算机科学与技术系C语言实 ...

  3. c语言程序设计实验8,c语言程序设计实验报告8_c语言实验报告格式及实验内容_c语言设计报告...

    实验名称 计算出1000以内10个最大素数之和 实验目的 1.熟练掌握if.if-else.if-else if语句和witch语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和s ...

  4. 华北科技c语言综合实验报告,C语言综合性实验报告1.doc

    C语言综合性实验报告1.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文档 ...

  5. C语言上机报告例文,c语言上机实验报告_大一c语言上机实验报告_c语言实验报告怎么写...

    计算机的同学会进行上机实验,包括ERP,JA,C语言等等.下面是出国留学网为大家整理的上机实验心得体会,供大家参考. 上机实验心得体会(一) 通过该实验,对所学的知识有了进一步的了解.在实验的过程中, ...

  6. 学生管理系统c语言代码实验报告,C语言学生信息管理系统实验报告(含源代码).doc...

    实 验 四:结构体 实验目的: 1.更加灵活的使用数组作为函数参数: 2.初步掌握开发一个小型实用系统的基本方法: 3.初步掌握书写程序设计开发文档的能力. 实验内容: 程序一:学生信息管理系统 编写 ...

  7. mysql语言基础实验报告_sql语言实验报告

    展开全部 数据库大型作业 --药32313133353236313431303231363533e58685e5aeb931333238653962品进销存系统的数据库设计 一.题目背景 随着我国市场 ...

  8. 关于猜拳c语言的实验报告,C语言猜拳问题

    #include#include#includeint choiceUser(); int choiceComputer(); void adjudicate(int u, int c); void ...

  9. c语言指针实验报告总结,c语言指针实验报告

    c语言指针实验报告 C语言实习报告 题目:指针及其应用 系别: 专业: 姓名: 学号: 日期: 一 实验名称:指针及其应用 二 实验目的: (1) 掌握变量的指针及其基本用法. (2) 掌握一维数组的 ...

最新文章

  1. 2021-2027年中国医疗护理行业深度研究及发展趋势报告
  2. C++从string中删除所有的某个特定字符
  3. CentOs7中安装sonarQube服务系列------2.安装postgresSql数据库
  4. ABAP:FTP Using SAP Functions
  5. 13_线性回归分析、线性模型、损失函数、最小二乘法之梯度下降、回归性能评估、sklearn回归评估API、线性回归正规方程,梯度下降API、梯度下降 和 正规方程对比
  6. js与C++交互及C++解析json
  7. 【每日一题】8月6日题目精讲—追债之旅
  8. 北师大c语言2019在线作业,华东石油《C语言》2019年春季学期在线作业(二)辅导答案...
  9. c语言程序设计多个文件,c语言如何单文件变多文件(2个文件),求大神帮忙!!...
  10. 折扇的保养方法是什么?
  11. 首批 8 款 5G 手机获 3C 认证;iPhone6 系列停产;Android Q Beta 5 发布 | 极客头条
  12. vue print 解决打印每页都有表头
  13. 天翼4gdongle linux,SIM7600X 4G DONGLE用户手册 (重定向自SIM7600CE-CNSE 4G DONGLE)
  14. AMiner订阅小程序上线,随时随地掌握最新科研成果
  15. uni-app入门及练手项目
  16. H5: 关于底部导航使用“fixed”会遮住网页最下面内容的解决办法!
  17. 关于wi-fi无线局域网的若干问题
  18. 基于MATLAB的人脸识别系统
  19. 【微服务】链路追踪 jaeger
  20. Unity UGUI图文混排源码--优化版

热门文章

  1. 头一批升级鸿蒙的手机,来了!这些手机将升级鸿蒙系统
  2. java radiogroup_Android基础控件RadioGroup使用方法详解
  3. android中radiogroup作用,Android View系列---RadioGroup与RadioButton
  4. html代码重排,是什么导致重排(layout / reflow)
  5. ipconfig 和ip addr的区别
  6. 创建自签名证书命令异常记录
  7. 直线一般式中A,B,C的推导
  8. 【学习总结】思想提升
  9. php之万能密码登陆
  10. 【每日一练】后台管理系统小案例