本文实例为大家分享了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;
}
}
}
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。