本文小编为大家详细介绍“C语言怎么实现弹跳小球效果”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言怎么实现弹跳小球效果”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、项目描述和最终项目展示项目描述: &n
本文小编为大家详细介绍“C语言怎么实现弹跳小球效果”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言怎么实现弹跳小球效果”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
项目描述: 使小球来回的跳动,跳动的路径是一个 "V "字型
效果展示图:
接下来让我们一步步的来实现上图效果。
一开始就达到最终的目的是有点难度的,所以我们一步步的来
先输出一个静态的小球
代码如下:
#include<stdio.h>//静止的小球int main(void){ int i,j; for(i=0;i<6;i++) printf("\n"); for(j=0;j<6;j++) printf(" "); printf("①\n"); return 0;}
效果图如下:
接下来让小球动起来
在上一步的基础上 我们要实现一个动态下落的一个效果
代码如下:
//下降的小球#include<stdio.h>#include<windows.h>int main(void){ int i,j; int x,y; int sum=0; x=10; y=10; for(x=1;x<10;x++)//控制行数,即下落的距离 { system("cls"); sum=0; for(i=0;i<x;i++)//输出行数 { printf("\n"); sum++; } for(j=0;j<y;j++)//距离原点的横着的距离 { printf(" "); } printf("①\n"); } return 0;}
效果图如下:
代码如下:
//上下弹跳的小球#include<stdio.h>#include<stdlib.h>int main(void){ int i,j; int x=0; int y=10; int height=20;//最大高度 int velocity=1;//你的加速度 while(1) { x=x+velocity;//高度是越来越高 system("cls"); //输出小球前的空行 for(i=0;i<x;i++) { printf("\n"); } for(j=0;j<y;j++) { printf(" "); } printf("①"); printf("\n"); if( x == height )//到底的时候,加速度变为负数 velocity = -velocity; if( x == 0 )//到顶的时候,加速度变为正数 velocity = -velocity; }}
效果图如下:
代码如下:
#include<stdio.h>#include<stdlib.h>int main(void){ int i,j; int x=0; int y=0; int velocity_x=1;//x加速度 int velocity_y=1;//y加速度 int left=0;//左边的边 int right=20;//右边的边 int top=0;//顶部 int bottom=10;//底部 while(1) { x = x+velocity_x; y = y+velocity_y; system("cls"); for(i=0;i<x;i++) { printf("\n"); } for(j=0;j<y;j++) { printf(" "); } printf("①"); printf("\n"); if( (x==top) || (x==bottom) ) //加速度正负的变化 { velocity_x=-velocity_x; } if( (y==left) || (y==right) ) { velocity_y=-velocity_y; } }}
效果图:
读到这里,这篇“C语言怎么实现弹跳小球效果”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网其他教程频道。
--结束END--
本文标题: C语言怎么实现弹跳小球效果
本文链接: https://lsjlt.com/news/329240.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0