c语言程序设计小球弹跳,C语言实现弹跳小球
这是一个简单的c语言源代码,C语言实现弹跳小球,设置了小球的分数及过关的难度。
#include "graphics.h"
#include "math.h"
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define ESC 0x011b
int x,y,x1,y1,key,t1,t2,keyx,keylong,keymove,over=0,i,tt=0,fast;
int ballx[9]={53,103,263,120,236,390,410,450,600};
int bally[9]={158,239,120,113,30,313,120,263,231},ballz[9]={0};
float ls;
win()
{float lx,ly,ll;
for(i=0;i<9;i++)
{
if(ballz[i]==1)/*假如球体已经消失就不判定*/
continue;
lx=(float)(ballx[i]-x);
ly=(float)bally[i]-y;
ll=lx*lx+ly*ly;
ls=sqrt(ll);
if((int)ls<17)/*判定两球是否碰到*/
{tt++;/*记录消失几个球*/
fast-=50;/*速度加快*/
if(i%2==0)/*移动加快*/
keymove+=5;
else
{
setcolor(0);
rectangle(keyx,460,keyx+keylong,470);
keylong-=10;/*长条变短*/
setcolor(YELLOW);
rectangle(keyx,460,keyx+keylong,470);
}
ballz[i]=1;
setcolor(0);
circle(ballx[i],bally[i],10);
if(y
if(x
{t1=-1;t2=-1;}
else
{t1=1;t2=-1;}
else
if(x
{t1=-1;t2=1;}
else
{t1=1;t2=1;}
}
}
}
fungo()
{ x=100,y=50,keyx=200,keylong=100,keymove=15,fast=5000;
for(i=0;i<9;i++)
{
setcolor(i+1);
circle(ballx[i],bally[i],10);
}
sleep(1);
t1=t2=1;
while(1)
{
while(!kbhit())
{
setcolor(YELLOW);
rectangle(keyx,460,keyx+keylong,470);
x1=x;
y1=y;
x+=t1;
y+=t2;
setcolor(4);
circle(x,y,6);
delay(fast);
setcolor(0);
circle(x,y,6);
win();
if(tt==9)/*胜利*/
{
cleardevice();
over=1;
setcolor(RED);
settextstyle(0,0,4);
setusercharsize(3,1,3,1);
outtextxy(200,200," YOU WIN! ");
break;
}
if(y>480)/*失败*/
{
cleardevice();
over=1;
setcolor(RED);
settextstyle(0,0,4);
setusercharsize(3,1,3,1);
outtextxy(200,200,"GAME OVER");
break;
}
else if(x==11&&y==11)/*判定碰到东西*/
{t1=1;t2=1;}
else if(x==629&&y==11)
{t1=-1;t2=1;}
else if(x==11)
{
if(y
{t1=1;t2=-1;}
else
{t1=1;t2=1;}
}
else if(y==11)
{
if(x
{t1=-1;t2=1;}
else
{t1=1;t2=1;}
}
else if(x==629)
{
if(y1>y)
{t1=-1;t2=-1;}
else
{t1=-1;t2=1;}
}
else if(y==449)
{
if(x>=keyx&&x<=keyx+keylong)
{
if(x
{t1=-1;t2=-1;}
else if(x>=(keyx+keylong/4)&&x
{t1=-1;t2=-2;}
else if(x>=(keyx+keylong/2)&&x
{t1=1;t2=-2;}
else
{t1=1;t2=-1;}
}
}
}
if(over)
break;
key=bioskey(0);
setcolor(0);
rectangle(keyx,460,keyx+keylong,470);
if(key==ESC)
{cleardevice();break;}
else if(key==LEFT)
keyx-=keymove;
else if(key==RIGHT)
keyx+=keymove;
}
}
main()
{int gd=DETECT,gr;
initgraph(&gd,&gr,"c:\tc");
fungo();
getch();
sleep(1);
closegraph();
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持云海天教程。
c语言程序设计小球弹跳,C语言实现弹跳小球相关推荐
- c语言程序设计复习提纲,C语言程序设计复习提纲
C语言程序设计复习提纲 C语言程序设计复习题: 1.理解以下术语的含义:数组.函数.地址 指针 指针变量 直接访问 间接访问.结构体 2.用起泡法对10个数由小到大排序(P134例题) 3.用递归方法 ...
- C语言找出4个最大和4个最小数,济南大学C语言程序设计教案:C语言实验课程第四课.doc...
济南大学C语言程序设计教案:C语言实验课程第四课 C语言实验课程第四课 实验一 数组与函数.数组与指针 一.实验目的 1 掌握数组名作为函数参数的含义.使用方法. 2 掌握多维数组作为函数参数的使用方 ...
- 实用c语言程序设计教材,实用C语言程序设计
<实用C语言程序设计>将C语言的编程理念和语法相结合,共划分为10章进行讲解,内容编排合理,深入浅出,通俗易懂.每章内容相对独立完整,便于学生学习和理解,章节之间衔接流畅.每章均配有大量实 ...
- 大学c语言程序设计听不懂,C语言听不懂?那你还不点进来看看?
最近16级的小鲜肉们结束了为期两周的军训生活,正式开始了自己的的大学学习生活,不过刚一开始上课小鲜肉们就懵了,专业课好难啊!C语言听不懂啊!( Ĭ ^ Ĭ ) 别慌,学长教你几招帮你渡过难关. 小鲜肉 ...
- c语言程序设计移动字母,C语言程序设计实例大全(220个例子)
C语言程序设计实例大全,C语言是世界上最流行.使用最广泛的高级程序设计语言之一,这里c语言 程序设计 实例 大全有220个例子供大家参考 c语言开发实例目录: 第一部分 基础篇 001 第一个C程序 ...
- C语言程序设计用if,C语言程序设计 1. if语句的运用 案例-if条件语句.docx
C语言程序设计补充案例 C语言程序设计 案例 if条件语句 一.案例描述 考核知识点 名称:if条件语句 练习目标 了解if结构语句的运行流程 掌握if语句.if-else语句.if-else if- ...
- c语言程序设计实践指导,C语言程序设计实习指导及报告.docx
C语言程序设计实习指导 C语言课组编写 西北农林科技大学信息工程学院 2010年2月 程序设讣是实践性很强的课程,实习的目的是为了巩固所学知识,培养.提高实际动手能 力和严肃认真的科学工作态度,而程序 ...
- c语言程序设计歌手大奖赛,C语言二维数组怎么做:设计青年歌手参加歌曲大奖赛计分系统: 共...,怎样用c语言程序设计? 青年歌手参加歌曲大奖赛,有10个评委...
导航:网站首页 > C语言二维数组怎么做:设计青年歌手参加歌曲大奖赛计分系统: 共...,怎样用c语言程序设计? 青年歌手参加歌曲大奖赛,有10个评委 C语言二维数组怎么做:设计青年歌手参加歌曲 ...
- c语言程序设计1试卷,(C语言程序设计期末试卷1.doc
(C语言程序设计期末试卷1 <C语言程序设计>试卷1 (使用层次或专业: 计算机) 若程序题中预留的空白不够,在试卷最后一页背面答题,请标记相应的题号 题 次一二三四五六总分应得分2010 ...
- c语言程序设计 中南大学,中南大学-C语言程序设计试卷.docx
中南大学-C语言程序设计试卷 C 语言程序设计试卷 一.单项选择题(每题1分,共20分) 1. C语言规定:在一个源程序中,main函数的位置( ). A. 必须在最开始 B. 必须在系统调用的库函数 ...
最新文章
- 网络推广——如何在网站内容优化工作中实现更好的网络推广?
- windows 安装 openssl
- iOS Hacker obfuscator-llvm Xcode集成配置
- 【Redis学习笔记】2018-06-14 Redis源码学习之sentinel
- html瀑布流视频列表,StaggeredGridLayoutManager实现瀑布流视频列表和头部广告位以及分栏Header条...
- 蚂蚁上市,身边又多了一堆千万富翁!
- 计算机病毒note01
- 微信音频silk导出多个mp3,合并成一个mp3,压缩大小
- postman Could not send request
- 共享网络打印机无法连接计算机,电脑中出现共享打印机连接错误问题的解决方法...
- 前端vue项目下载zip压缩包及附加
- OpenCV学习01-加载、修改、保存图像
- 从购买服务器到网站搭建成功保姆级教程~超详细
- 广告推广是什么意思?利用文章推广的方法做广告推广技巧总结
- 使用textCNN进行文本分类的原理
- Unity 生成原始LUT用于外部校色相机不透明物体截图
- 【摄影基础】光圈的作用
- PGSQL插入或者更新的语法
- xshell6 和 xftp6 官网免费下载
- 实现历史价格查询java_java – 从雅虎金融获得ISIN的历史价格