这是一个简单的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语言实现弹跳小球相关推荐

  1. c语言程序设计复习提纲,C语言程序设计复习提纲

    C语言程序设计复习提纲 C语言程序设计复习题: 1.理解以下术语的含义:数组.函数.地址 指针 指针变量 直接访问 间接访问.结构体 2.用起泡法对10个数由小到大排序(P134例题) 3.用递归方法 ...

  2. C语言找出4个最大和4个最小数,济南大学C语言程序设计教案:C语言实验课程第四课.doc...

    济南大学C语言程序设计教案:C语言实验课程第四课 C语言实验课程第四课 实验一 数组与函数.数组与指针 一.实验目的 1 掌握数组名作为函数参数的含义.使用方法. 2 掌握多维数组作为函数参数的使用方 ...

  3. 实用c语言程序设计教材,实用C语言程序设计

    <实用C语言程序设计>将C语言的编程理念和语法相结合,共划分为10章进行讲解,内容编排合理,深入浅出,通俗易懂.每章内容相对独立完整,便于学生学习和理解,章节之间衔接流畅.每章均配有大量实 ...

  4. 大学c语言程序设计听不懂,C语言听不懂?那你还不点进来看看?

    最近16级的小鲜肉们结束了为期两周的军训生活,正式开始了自己的的大学学习生活,不过刚一开始上课小鲜肉们就懵了,专业课好难啊!C语言听不懂啊!( Ĭ ^ Ĭ ) 别慌,学长教你几招帮你渡过难关. 小鲜肉 ...

  5. c语言程序设计移动字母,C语言程序设计实例大全(220个例子)

    C语言程序设计实例大全,C语言是世界上最流行.使用最广泛的高级程序设计语言之一,这里c语言 程序设计 实例 大全有220个例子供大家参考 c语言开发实例目录: 第一部分 基础篇 001 第一个C程序 ...

  6. C语言程序设计用if,C语言程序设计 1. if语句的运用 案例-if条件语句.docx

    C语言程序设计补充案例 C语言程序设计 案例 if条件语句 一.案例描述 考核知识点 名称:if条件语句 练习目标 了解if结构语句的运行流程 掌握if语句.if-else语句.if-else if- ...

  7. c语言程序设计实践指导,C语言程序设计实习指导及报告.docx

    C语言程序设计实习指导 C语言课组编写 西北农林科技大学信息工程学院 2010年2月 程序设讣是实践性很强的课程,实习的目的是为了巩固所学知识,培养.提高实际动手能 力和严肃认真的科学工作态度,而程序 ...

  8. c语言程序设计歌手大奖赛,C语言二维数组怎么做:设计青年歌手参加歌曲大奖赛计分系统: 共...,怎样用c语言程序设计? 青年歌手参加歌曲大奖赛,有10个评委...

    导航:网站首页 > C语言二维数组怎么做:设计青年歌手参加歌曲大奖赛计分系统: 共...,怎样用c语言程序设计? 青年歌手参加歌曲大奖赛,有10个评委 C语言二维数组怎么做:设计青年歌手参加歌曲 ...

  9. c语言程序设计1试卷,(C语言程序设计期末试卷1.doc

    (C语言程序设计期末试卷1 <C语言程序设计>试卷1 (使用层次或专业: 计算机) 若程序题中预留的空白不够,在试卷最后一页背面答题,请标记相应的题号 题 次一二三四五六总分应得分2010 ...

  10. c语言程序设计 中南大学,中南大学-C语言程序设计试卷.docx

    中南大学-C语言程序设计试卷 C 语言程序设计试卷 一.单项选择题(每题1分,共20分) 1. C语言规定:在一个源程序中,main函数的位置( ). A. 必须在最开始 B. 必须在系统调用的库函数 ...

最新文章

  1. 网络推广——如何在网站内容优化工作中实现更好的网络推广?
  2. windows 安装 openssl
  3. iOS Hacker obfuscator-llvm Xcode集成配置
  4. 【Redis学习笔记】2018-06-14 Redis源码学习之sentinel
  5. html瀑布流视频列表,StaggeredGridLayoutManager实现瀑布流视频列表和头部广告位以及分栏Header条...
  6. 蚂蚁上市,身边又多了一堆千万富翁!
  7. 计算机病毒note01
  8. 微信音频silk导出多个mp3,合并成一个mp3,压缩大小
  9. postman Could not send request
  10. 共享网络打印机无法连接计算机,电脑中出现共享打印机连接错误问题的解决方法...
  11. 前端vue项目下载zip压缩包及附加
  12. OpenCV学习01-加载、修改、保存图像
  13. 从购买服务器到网站搭建成功保姆级教程~超详细
  14. 广告推广是什么意思?利用文章推广的方法做广告推广技巧总结
  15. 使用textCNN进行文本分类的原理
  16. Unity 生成原始LUT用于外部校色相机不透明物体截图
  17. 【摄影基础】光圈的作用
  18. PGSQL插入或者更新的语法
  19. xshell6 和 xftp6 官网免费下载
  20. 实现历史价格查询java_java – 从雅虎金融获得ISIN的历史价格

热门文章

  1. 游戏优化利器 | Android GPU Inspector 开放 Beta 测试版
  2. (zz)楚王何故好细腰
  3. 给自己定个一年后的终极目标!
  4. 电脑重装系统后如何把网站设为首页
  5. 个人信息保护中,APP经常调用的Android类和方法
  6. 使用python做王者荣耀挂机刷金币脚本
  7. python的bytes数据类型
  8. jQuery插件库常用前端库引用地址详细提供
  9. 最新bilibili怎么下载视频
  10. 拓扑量子计算机有缺点,一个荷兰硕士生的新模型有助于描述量子计算机中的缺陷和错误...