c语言大作业黑白棋,C语言编写黑白棋游戏源代码.doc
C语言编写的黑白棋游戏源代码
/*3.3.4 源程序*/
#include "graphics.h" /*图形系统头文件*/
#define LEFT 0x4b00 /*光标左键值*/
#define RIGHT 0x4d00 /*光标右键值*/
#define DOWN 0x5000 /*光标下键值*/
#define UP 0x4800 /*光标上键值*/
#define ESC 0x011b /* ESC键值*/
#define ENTER 0x1c0d /* 回车键值*/
int a[8][8]={0},key,score1,score2;/*具体分数以及按键与存放棋子的变量*/
char playone[3],playtwo[3];/*两个人的得分转换成字符串输出*/
void playtoplay(void);/*人人对战函数*/
void DrawQp(void);/*画棋盘函数*/
void SetPlayColor(int x);/*设置棋子第一次的颜色*/
void MoveColor(int x,int y);/*恢复原来棋盘状态*/
int QpChange(int x,int y,int z);/*判断棋盘的变化*/
void DoScore(void);/*处理分数*/
void PrintScore(int n);/*输出成绩*/
void playWin(void);/*输出胜利者信息*/
/******主函数*********/
void main(void)
{
int gd=DETECT,gr;
initgraph(&gd,&gr,"c:\\tc"); /*初始化图形系统*/
DrawQp();/*画棋盘*/
playtoplay();/*人人对战*/
getch();
closegraph();/*关闭图形系统*/
}
void DrawQp()/*画棋盘*/
{
int i,j;
score1=score2=0;/*棋手一开始得分都为0*/
setbkcolor(BLUE);
for(i=100;i<=420;i+=40)
{
line(100,i,420,i);/*画水平线*/
line(i,100,i,420); /*画垂直线*/
}
setcolor(0);/*取消圆周围的一圈东西*/
setfillstyle(SOLID_FILL,15);/*白色实体填充模式*/
fillellipse(500,200,15,15); /*在显示得分的位置画棋*/
setfillstyle(SOLID_FILL,8); /*黑色实体填充模式*/
fillellipse(500,300,15,15);
a[3][3]=a[4][4]=1;/*初始两个黑棋*/
a[3][4]=a[4][3]=2;/*初始两个白棋*/
setfillstyle(SOLID_FILL,WHITE);
fillellipse(120+3*40,120+3*40,15,15);
fillellipse(120+4*40,120+4*40,15,15);
setfillstyle(SOLID_FILL,8);
fillellipse(120+3*40,120+4*40,15,15);
fillellipse(120+4*40,120+3*40,15,15);
score1=score2=2; /*有棋后改变分数*/
DoScore();/*输出开始分数*/
}
void playtoplay()/*人人对战*/
{
int x,y,t=1,i,j,cc=0;
while(1)/*换棋手走棋*/
{
x=120,y=80;/*每次棋子一开始出来的坐标,x为行坐标,y为列坐标*/
while(1) /*具体一个棋手走棋的过程*/
{
PrintScore(1);/*输出棋手1的成绩*/
PrintScore(2);/*输出棋手2的成绩*/
SetPlayColor(t);/*t变量是用来判断棋手所执棋子的颜色*/
fillellipse(x,y,15,15);
key=bioskey(0);/*接收按键*/
if(key==ESC)/*跳出游戏*/
break;
else
if(key==ENTER)/*如果按键确定就可以跳出循环*/
{
if(y!=80&&a[(x-120)/40][(y-120)/40]!=1
&&a[(x-
c语言大作业黑白棋,C语言编写黑白棋游戏源代码.doc相关推荐
- 陕科大c语言大作业,西工大c语言大作业.ppt
西工大c语言大作业 求最小非平凡因子 1.题目描述 给定一个整整数n(2 ≤ n ≤ 50),求n的最小非平凡因子. 2.输入 输入仅一行,一个正整数n(2 ≤ n ≤ 50). 3.输出 输出仅一行 ...
- c语言大作业开题报告,c语言开题报告
本栏目为关于c语言开题报告和开题报告的论文范文,免费给你写作c语言大作业开题报告提供相关文献资料. 摘要:在一套试卷中,重复题问题是影响考试质量的一个重要因素.该文针對C语言试卷中选择题间易出现重复题 ...
- c语言大作业开题报告,C语言大作业报告.doc
PAGE13 / NUMPAGES21 页 PAGE13 目录 一. 设计题目 二.目标和需求分析 三.开发工具 四.应用平台 五.程序模块 1.游戏盒子 2.2048 3.扫雷 4.贪吃蛇 六.开发 ...
- c语言大作业开题报告,c语言毕业论文开题报告范文
c语言毕业论文开题报告范文 日期:2018年05月04日 编辑:ad201107111759308692 作者:无忧论文网 点击次数:832 论文价格:0元 论文编号:lw20180423190031 ...
- 万年历c语言大作业实验,用C语言写的一个万年历
下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. #include #include int input(); void re_year(i ...
- c语言大作业 模拟泊松分布,C语言下泊松分布以及指数分布随机数生成器实现
最近实验室的项目需要实现模拟文件访问序列,要求单位时间内的数据请求次数符合泊松分布,而两次请求见的时间间隔符合指数分布.没办法只好重新捡起已经丢掉多时的概率知识.于是也就有了这篇关于在C语言下符合泊松 ...
- c语言大作业矩阵运算,用C语言实现矩阵运算
<用C语言实现矩阵运算>由会员分享,可在线阅读,更多相关<用C语言实现矩阵运算(6页珍藏版)>请在人人文库网上搜索. 1.任务二:矩阵的基本运算#in clude#in clu ...
- c语言大作业酒店管理系统,C语言酒店管理系统(最新整理)
<C语言酒店管理系统(最新整理)>由会员分享,可在线阅读,更多相关<C语言酒店管理系统(最新整理)(7页珍藏版)>请在人人文库网上搜索. 1.include#include # ...
- c语言大作业车票管理系统,c语言车票管理系统.docx
c语言车票管理系统 课 程 设 计 报 告课程名称 C语言课程设计 课题名称 车票管理系统 专 业 自动化 班 级 1402 学 号 201401020208 姓 名 宋爱军 指导教师 陈世清 杨子华 ...
- 等价关系运算c语言大作业,如何用c语言编写:n等价关系判断,并求出等价类及其元素...
满意答案 guigui5418 2015.05.18 采纳率:48% 等级:8 已帮助:1460人 12345678910111213141516171819202122232425262728 ...
最新文章
- 国家自然科学基金委公布生命科学部四类科学问题典型案例
- Java基础day16
- 直播 | AAAI 2021:如何缓解GNN预训练和微调之间的优化误差?
- MFC文件打开格式,MFC默认打开文档后缀(支持打开多图像格式)
- Java –手工Classloader隔离
- 2019计算机二级java软件_2019年计算机二级Java考试冲刺题及答案(2)
- 使用kettle导入数据到ADB for PostgreSQL
- openresty + nginx-http-sysguard 调研使用
- 计算机注册表管理,如何打开计算机注册表编辑器
- DataBseDesign工作笔记003---ERStudio使用笔记_基本使用方法详解
- 机器学习从入门到进阶✅
- 单片机类毕业设计题目汇总
- android Textview属性细节以及EditText属性
- python提高for循环速度_提升Python运行效率的小窍门
- 解决 Web、软件 视频播放黑屏
- 测绘——利用ExifTool提取照片exif信息【windows环境下】(信息非常全)
- vmbox虚拟机Ubuntu通过桥接方式上网
- Java中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念(转)
- 异性相处,关系再好,也要懂得这些“分寸”
- IT桔子文飞翔:人工智能行业发展趋势