c语言小球消砖块的游戏,求大神帮忙看看这个弹弹球消砖块的游戏代码,为什么speed只能15...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
#include
#include
int ball_x,ball_y;//定义小球的x,y坐标
int v_x,v_y;//定义小球的x,y的运动速度
int high=20;
int wideth=36;//定义画面大小
int banzi_x,banzi_y;
int banjing;
int left,right;//定义下面板子的各种参数
int score1=0;
int score2=0;//定义两个得分
int zhuankuai_x1,zhuankuai_y1;//定义砖块的位置
void HideCursor()
{
CONSOLE_CURSOR_INFO cursor_info = {1, 0};
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
}
void gotoxy(int x, int y)
{
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X=x;
pos.Y=y;
SetConsoleCursorPosition(hOut, pos);
}
void initialization()//初始化各数据
{
ball_x = 0;
ball_y = wideth/2;//初始化小球的位置
v_x = 1;
v_y = 1;//初始化速度方向默认向右下角
zhuankuai_x1 = 0;
zhuankuai_y1 = 5;//初始化砖块位置
banzi_y = 13;
banzi_x = high-2;
banjing = 3;
left = banzi_y - banjing;
right = banzi_y + banjing;//板子位置
}
void show()//显示的位置;
{
int i,j;
gotoxy(0,0);//清屏函数
for(i=0;i<=high;i++)
{
for(j=0;j<=wideth;j++)
{
if((i == ball_x) && (j == ball_y))
printf("o");//输出小球
else if((i == zhuankuai_x1) && (j == zhuankuai_y1))
printf("B");//输出砖块
else if(j == wideth)
printf("|");//输出右边界
else if((i == banzi_x) && (j <= right) && (j >= left))
printf("*");//输出板子
else if(i == high)
printf("_");//输出下边界
else
printf(" ");
}
printf("\n");
}
printf("你的得分:%d\n",score1);
printf("你的弹数是:%d",score2/15);//输出两个得分
}
void updatenowithkeyboard()//键盘输入无关的参量
{
if((ball_x == banzi_x-1) && (ball_y <= right) && (left <= ball_y))
{
v_x = (-1) * v_x;
v_y = (-1) * v_y;
score2++;
}//小球弹到板子上时反弹,并且弹数得分增加
static int speed=0;
if(speed < 15)
speed++;
if(speed == 15)
{
ball_x = ball_x + v_x;
ball_y = ball_y + v_y;
speed=0;
}//定义一个静态变量,使小球的速度变慢,板子速度不受影响,但是不知道为什么数字只能设置为15,其他的小球都显示不了
if(ball_x == 0)
v_x = (-1) * v_x;
if((ball_y == 0) || (ball_y == wideth))
v_y = (-1) * v_y;//小球碰到上边界,左右边界时反弹
if((ball_x == zhuankuai_x1) && (ball_y == zhuankuai_y1))
{
zhuankuai_x1 = rand() % wideth;
score1++;
}//小球碰到砖块时,砖块随机任意位置生成一个,得分+1
if(ball_x > banzi_x)
{
printf("\nGAME OVER\n");
exit(0);//当小球落到板子下面时,游戏结束
}
}
void updatewithkeyboard()//键盘输入有关的参量
{
char input;
if(kbhit())
{
input = getch();
if(input == 'a')
banzi_y--;
if(input == 'd')
banzi_y++;
left = banzi_y - banjing;
right = banzi_y + banjing;
}//用a和d来控制板子的左右移动
}
int main()
{
HideCursor();
initialization();
while(1)
{
show();
updatewithkeyboard();
updatenowithkeyboard();
}
return 0;
}
详情在updatenowithkeyboard()这个函数中,为什么改变speed的值小球就不显示了
c语言小球消砖块的游戏,求大神帮忙看看这个弹弹球消砖块的游戏代码,为什么speed只能15...相关推荐
- c语言结构体多门成绩排序,c语言结构体按学号排序求大神帮忙改一下吧
struct record { char code[LEN+1]; /* 学号 */ char name[LEN+1]; /* 姓名 */ int age; /* 年龄 */ char sex[3]; ...
- 请输入30名同学的c语言成绩,求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共有30名学...
问题描述: 求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共有30名学 求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共 ...
- c语言中len的作用,C语言 int len( ) 求大神解释
C语言 int len( ) 求大神解释 sen3830058 LV12 2013-03-13 #include int len(char s[]){ int n=0; while(s[n]!='\0 ...
- 秒表c语言程序代码,求大神帮忙写一篇简单的C语言秒表程序, 谢谢。
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include Unsigned char code Tab[10]{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0 ...
- java主界面设置背景图片_java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改)...
java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改) 关注:223 答案:4 mip版 解决时间 2021-01-26 22:09 提问者非莪莫属 2021-01 ...
- 迅雷极速版服务器未响应,迅雷极速版频繁崩溃,求大神帮忙
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 事情的起因是这样的:本来一直用了好多年,都没有频繁崩溃,只是出现有时在任务进行中时无法添加新任务.但是直到了迅雷极速版被强制升级为x.当时并不知道贴吧里的 ...
- ubuntu14.04扩展屏幕后,打开matlab就死机。求大神帮忙解决!!!万分感谢
ubuntu14.04扩展屏幕后,打开matlab就死机.求大神帮忙解决!!!万分感谢
- android重签名闪退,360加固保加固完之后重新签名的包运行闪退,求大神帮忙解答...
加固完之后重新签名的包运行闪退,求大神帮忙解答 错误提示: 07-08 15:51:23.769: E/AndroidRuntime(15012): FATAL EXCEPTION: main 07- ...
- 大神的自动练法师技能,想单独提取,练火星球到 75熟练度,,求大神帮忙提取下。
大神的自动练法师技能,想单独提取,练火星球到 75熟练度,,求大神帮忙提取下. 2014-04-26 00:50:02| 分类: assa 脚本范文列 |字号 订阅 下载LOFTER我的照片书 | d ...
- 求大神帮忙,想要一元20次方程的解matlab代码,在线等,(解一元20次方程的解matlab代码)
求大神帮忙,想要一元20次方程的解matlab代码,在线等,(解一元20次方程的解matlab代码) 已知y是一个1*101的数组如下,函数如下,想求得x 135 130 134 128 129 13 ...
最新文章
- WM OS手机跳过调整屏幕的终极办法
- nuxt渲染html文件,Nuxt页面级缓存
- postgresql 删除触发器_PostgreSQL:我没有带闪,不讲武德
- web前端页面——移动端简单登录页面、下拉菜单(代码详细注释)
- 错误代码1500什么意思_为什么藏族可以吃牦牛肉?(笑cry~
- 希腊字母|罗马数字|中文数字大写
- 未来5年智慧城市宽带入户超百兆
- 第六章第三十题(游戏:双骰子赌博)(Game: craps)
- 计算机通信答辩ppt,电子设计大赛答辩.ppt
- MATLAB启动慢解决方案
- Web前端开发(一)--html基本结构,基本标签
- ES中 Nested 类型的原理和使用
- BZOJ 2563 阿狸和桃子的游戏
- 【计算机网络】湖南中医药大学——计算机网络实地考察项目
- 解决导出为Excel时文件名乱码的问题。
- MongoDB数据库设计(一)
- win10计算机无法识别u盘,win10电脑无法识别U盘应该如何解决
- android 截屏需要权限,安卓App要权限还会偷删截屏?专治流氓App神器
- 反编译获取apk安装包源代码步骤
- 系统学习机器学习之距离的度量(一)--常见距离
热门文章
- pc端MNIST数据集pytorch模型CNN网络转换为onnx部署树莓派4B和神经棒NCS2(使用openvino2021框架)
- 淘宝API开发系列---阿里.聚石塔.开放平台的使用
- PDF打开后出现中文乱码情况
- 最新变态传奇android,新开超级变态传奇_刚开一秒的变态传奇手游私服 18183Android游戏频道...
- 【机器学习PAI实践十一】机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码
- 镜像加速器——使用加速器可以提升获取Docker官方镜像的速度
- 黄金实盘点评:价格不宜回调过深
- 计算机主机发出滴滴声音怎么办,电脑蓝屏后主机滴滴的响应该怎么处理教程
- c语言的整型常量分为,C语言中整型常量和实型常量有什么区别?
- Unix/Linux编程:Internet domain socket