知乎上看到一个小球弹跳的代码,觉得挺有意思的,就打出来自己看看
https://zhuanlan.zhihu.com/p/24633092
#include<stdio.h>//上下跳动
#include<stdlib.h>
int main()
{
int i,j;
int x=5,y=10;//小球坐标
int h=20;//高度
int v=1;//速度
while(1)
{
x=x+v;//坐标=坐标+速度
system("cls");//清屏函数
for(i=0; i<x; i++)
printf("\n");//小球上面的空行
for(j=0; j<y; j++)
printf(" ");//小球前面的空格
printf("o");//输出小球
printf("\n");
if(x==h)
v=-v;
if(x==0)
v=-v;
}
return 0;
}
#include<stdio.h>//斜着跳动
#include<stdlib.h>
int main()
{
int i,j;
int x=0,y=5;//小球坐标
int l=0,r=20;//x方向的范围
int top=0,bottom=10;//y方向的范围
int v_x=1,v_y=1;//x,y方向上的速度速度
while(1)
{
x=x+v_x;//坐标=坐标+速度
y=y+v_y;
system("cls");//清屏函数
for(i=0; i<x; i++)
printf("\n");//小球上面的空行
for(j=0; j<y; j++)
printf(" ");//小球前面的空格
printf("o");//输出小球
printf("\n");
if((x==top)||(x==bottom))
{
v_x=-v_x;//如果到了最底或者顶部就反向
}
if((y==l)||(y==r))
{
v_y=-v_y;//到了最左边或者最右边反向
}
}
return 0;
}