完成了思考题中的触碰边界响铃,用循环代替sleep
其中,system("cls") 清屏函数需申明<stdlib.h>
Sleep()需申明<windows.h>
#include<stdio.h>
#include<windows.h>
#include<stdlib.h>
int main()
{
int velocity_x = 1, velocity_y = 1;
int top = 0, bottom = 10;
int left = 0, right = 20;//初始化小球移动的边界
int x = 5, y = 10;//小球初始位置
int j, k;
int i = 0;
while (1)
{
system("cls");//清屏函数
x += velocity_x;//通过此代码来控制小球的位置
y += velocity_y;
for (j = 1;j <= x;j++)
printf("\n");
for (k = 0;k < y;k++)
printf(" ");
printf("o");
for (i = 0;i < 100000000;i++);//代替Sleep()
if (x == bottom||x==top)
{
velocity_x = -velocity_x;
printf("\a");//触碰边界响铃
}
if (y == left||y==right)
{
velocity_y = -velocity_y;
printf("\a");
}
}
}