Microsoft visual Studio 2015 下的俄罗斯方块源程序以及修改过程
来源:互联网 发布:动易cms 6.8 模板 编辑:程序博客网 时间:2024/06/07 06:32
项目名称:俄罗斯方块
项目语言:C++
项目软件: Microsoft visual Studio 2015
错误1
错误提要:错误使用标识符
错误定位:
clrscr()
错误提示:
未定义标识符“clrscr”
- 解决方案一:
- 将clrscr();替换成 system("cls"); 再加#include<stdlib.h>头文件
- 错误原因:
- 1.clrscr()是在头文件conio.h下的函数,原型是void clrscr(void)
- 2.在VC平台下,显然是不能使用控制台语句conio的,而在TC平台则可以
错误2
错误提要:
错误定位:
kbhit()
gech()
错误提示:
解决方案:
kbhit() 改为 _kbhit()
gech() 改为 _gech()
可运行源码:
- #include <iostream>
- #include<conio.h>
- #include <stdlib.h>
- #include<time.h>
- using namespace std;
- int z=1,a,b=1,c;
- const int kd=12;
- const int zkd=18;
- const int gd=21;
- const int xfk=10;
- int fs=0,dj=1,lsfs=0; //统计分数的变量
- int dx1,dx2,dx3,dx4,dy1,dy2,dy3,dy4; //打方块坐标
- int xdx1=5+xfk,xdx2=4+xfk,xdx3=5+xfk,xdx4=4+xfk,xdy1=1,xdy2=1,xdy3=2,xdy4=2; //小方块坐标
- int map[zkd][gd]; //一个二维数组来决定整个画面
- int sjs (int); //返回一个随机数大小由参数决定
- void csxz (int); //创建一个新的大方块
- void csxzx (int);//创建一个新的小方块
- void csh(); //游戏的轮廓
- void cout_map(); //输出map
- void xz (int,int); //改变当前方块的形态
- void zytjzs (int); //左右控制方块
- void zytj (int,int,int); //左右控制方块
- void xtjzs (); //下移方块
- int xtj (int,int); //下移方块
- int jstj (); //结束条件
- void dfpl (int,int); //消除后的排序
- void dftj (); //消除
- int main (){
- srand((unsigned)time(NULL));
- int lsx=0,lsxy=60,lsy=lsxy; //快速下降时用到的变量
- char k='\0';
- csh();
- c=sjs(6); //取一个随机数
- a=sjs(6);//取一个随机数
- csxz (a);//通过随机数创建一个大方块
- csxzx (c);//通过随机数创建一个小方块
- while (z==1){
- for (long i=0;i<6000000;i++);
- if (kbhit()){
- k=getch();
- }
- if (k=='5'){
- b++;
- if (b>4)b=1;
- xz (a,b); //改变方块的形态 a是当前方块 b是当前的四个形态
- }
- if (k=='4'){
- zytj (a,b,4); //向左控制
- }
- if (k=='6'){
- zytj (a,b,6);//向右控制
- }
- if (k=='8'){lsy=2;}
- lsx++;
- if (lsx>lsy){
- if (xtj (a,b)==0){
- dftj ();
- if (jstj ()==1){
- z=0;
- }else{
- lsy=lsxy;
- a=c;
- c=sjs(6);
- b=1;
- csxz (a);
- csxzx (c);
- }
- }
- lsx=0;
- }
- if (lsfs==5){
- dj++;
- if (lsxy>3)lsxy--;
- lsfs=0;
- }
- k='\0';
- clrscr();
- cout_map();
- }
- cout<<"游戏结束!";
- return 0;
- }
- void csh(){
- for (int y=0;y<gd;y++){
- for (int x=0;x<zkd;x++)map[x][y]=0;
- }
- for (int x=0;x<zkd;x++){map[x][0]=1;map[x][gd-1]=1;}
- for (int y=0;y<gd;y++){map[0][y]=2;map[kd-1][y]=2;map[zkd-1][y]=2;}
- for (int x=12;x<zkd-1;x++)map[x][10]=1;
- map[0][0]=0;map[kd-1][0]=0;map[0][gd-1]=0;map[kd-1][gd-1]=0;map[zkd-1][gd-1]=0;map[zkd-1][0]=0;
- map[kd+1][18]=5;map[kd][18]=4;
- map[kd+2][18]=12;
- map[kd+4][18]=7;map[kd+3][18]=6;
- map[kd+1][16]=9;map[kd][16]=8;
- map[kd+2][16]=12;
- map[kd+4][16]=11;map[kd+3][16]=10;
- }
- void cout_map(){
- for (int y=0;y<gd;y++){
- for (int x=0;x<zkd;x++){
- if (map[x][y]==0)cout<<" ";
- if (map[x][y]==1)cout<<"一";
- if (map[x][y]==2)cout<<"丨";
- if (map[x][y]==3)cout<<"口";
- if (map[x][y]==4)cout<<"分";
- if (map[x][y]==5)cout<<"数";
- if (map[x][y]==12)cout<<": ";
- if (map[x][y]==6){
- if (fs>999&&fs<10000)cout<<fs/100;
- if (fs>99&&fs<1000)cout<<" "<<fs/100;
- if (fs<100)cout<<" ";
- }
- if (map[x][y]==7){
- if (fs>999&&fs<10000){
- if (fs%1000<10)cout<<"0"<<fs%1000;
- if (fs%1000>99){
- if ((fs%1000)%100<10){
- cout<<"0"<<(fs%1000)%100;
- }else{
- cout<<(fs%1000)%100;
- }
- }
- if (fs%1000<100&&fs%1000>9)cout<<fs%1000;
- }
- if (fs>99&&fs<1000){
- if (fs%100<10){
- cout<<"0"<<fs%100;
- }else{
- cout<<fs%100;
- }
- }
- if (fs>9&&fs<100)cout<<fs;
- if (fs<10)cout<<" "<<fs;
- }
- if (map[x][y]==8)cout<<"等";
- if (map[x][y]==9)cout<<"级";
- if (map[x][y]==10){
- if (dj>999&&dj<10000)cout<<dj/100;
- if (dj>99&&dj<1000)cout<<" "<<dj/100;
- if (dj<100)cout<<" ";
- }
- if (map[x][y]==11){
- if (dj>999&&dj<10000){
- if (dj%1000<10)cout<<"0"<<dj%1000;
- if (dj%1000>99){
- if ((dj%1000)%100<10){
- cout<<"0"<<(dj%1000)%100;
- }else{
- cout<<(dj%1000)%100;
- }
- }
- if (dj%1000<100&&dj%1000>9)cout<<dj%1000;
- }
- if (dj>99&&dj<1000){
- if (dj%100<10){
- cout<<"0"<<dj%100;
- }else{
- cout<<dj%100;
- }
- }
- if (dj>9&&dj<100)cout<<dj;
- if (dj<10)cout<<" "<<dj;
- }
- }
- cout<<"\n";
- }
- }
- int sjs (int v){
- return rand()%v+1;
- }
- void csxz (int zl){
- if (zl==1){dx1=5;dy1=1;dx2=4;dy2=1;dx3=5;dy3=2;dx4=4;dy4=2;}
- if (zl==2){dx1=5;dy1=1;dx2=5;dy2=2;dx3=5;dy3=3;dx4=5;dy4=4;}
- if (zl==3){dx1=5;dy1=1;dx2=5;dy2=2;dx3=5;dy3=3;dx4=4;dy4=1;}
- if (zl==4){dx1=5;dy1=1;dx2=5;dy2=2;dx3=5;dy3=3;dx4=6;dy4=1;}
- if (zl==5){dx1=5;dy1=1;dx2=5;dy2=2;dx3=6;dy3=2;dx4=4;dy4=2;}
- if (zl==6){dx1=5;dy1=1;dx2=5;dy2=2;dx3=4;dy3=1;dx4=6;dy4=2;}
- if (zl==7){dx1=5;dy1=1;dx2=5;dy2=2;dx3=4;dy3=2;dx4=6;dy4=1;}
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- }
- void csxzx (int zl){
- map[xdx1][xdy1]=0;map[xdx2][xdy2]=0;map[xdx3][xdy3]=0;map[xdx4][xdy4]=0;
- if (zl==1){xdx1=5+xfk;xdy1=1;xdx2=4+xfk;xdy2=1;xdx3=5+xfk;xdy3=2;xdx4=4+xfk;xdy4=2;}
- if (zl==2){xdx1=5+xfk;xdy1=1;xdx2=5+xfk;xdy2=2;xdx3=5+xfk;xdy3=3;xdx4=5+xfk;xdy4=4;}
- if (zl==3){xdx1=5+xfk;xdy1=1;xdx2=5+xfk;xdy2=2;xdx3=5+xfk;xdy3=3;xdx4=4+xfk;xdy4=1;}
- if (zl==4){xdx1=5+xfk;xdy1=1;xdx2=5+xfk;xdy2=2;xdx3=5+xfk;xdy3=3;xdx4=6+xfk;xdy4=1;}
- if (zl==5){xdx1=5+xfk;xdy1=1;xdx2=5+xfk;xdy2=2;xdx3=6+xfk;xdy3=2;xdx4=4+xfk;xdy4=2;}
- if (zl==6){xdx1=5+xfk;xdy1=1;xdx2=5+xfk;xdy2=2;xdx3=4+xfk;xdy3=1;xdx4=6+xfk;xdy4=2;}
- if (zl==7){xdx1=5+xfk;xdy1=1;xdx2=5+xfk;xdy2=2;xdx3=4+xfk;xdy3=2;xdx4=6+xfk;xdy4=1;}
- map[xdx1][xdy1]=3;map[xdx2][xdy2]=3;map[xdx3][xdy3]=3;map[xdx4][xdy4]=3;
- }
- void xz (int qs,int bh){
- int lsx=dx2,lsx0=dx2,lsy=dy2;
- map[dx1][dy1]=0;map[dx2][dy2]=0;map[dx3][dy3]=0;map[dx4][dy4]=0;
- if (map[lsx-1][lsy]==2){
- lsx++;
- if (qs==2&&map[lsx+1][lsy]==3)return;
- if (qs==2)lsx++;
- }
- if (map[lsx+1][lsy]==2){
- lsx--;
- if (qs==2&&map[lsx-1][lsy]==3)return;
- }
- if (qs==1){
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- if (qs==2){
- dx2=lsx;
- if (bh==1||bh==3){
- if (map[dx2][dy2-1]==0&&map[dx2][dy2+1]==0&&map[dx2][dy2+2]==0){
- dx1=dx2;dy1=dy2-1;dx3=dx2;dy3=dy2+1;dx4=dx2;dy4=dy2+2;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==2||bh==4){
- if (map[dx2+1][dy2]==0&&map[dx2-1][dy2]==0&&map[dx2-2][dy2]==0){
- dx1=dx2+1;dy1=dy2;dx3=dx2-1;dy3=dy2;dx4=dx2-2;dy4=dy2;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- }
- if (qs==3){
- dx2=lsx;
- if (bh==1){
- if (map[dx2][dy2-1]==0&&map[dx2][dy2+1]==0&&map[dx2-1][dy2-1]==0){
- dx1=dx2;dy1=dy2-1;dx3=dx2;dy3=dy2+1;dx4=dx2-1;dy4=dy2-1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==2){
- if (map[dx2+1][dy2]==0&&map[dx2-1][dy2]==0&&map[dx2+1][dy2-1]==0){
- dx1=dx2+1;dy1=dy2;dx3=dx2-1;dy3=dy2;dx4=dx2+1;dy4=dy2-1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==3){
- if (map[dx2][dy2+1]==0&&map[dx2][dy2-1]==0&&map[dx2+1][dy2+1]==0){
- dx1=dx2;dy1=dy2+1;dx3=dx2;dy3=dy2-1;dx4=dx2+1;dy4=dy2+1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==4){
- if (map[dx2-1][dy2]==0&&map[dx2+1][dy2]==0&&map[dx2-1][dy2+1]==0){
- dx1=dx2-1;dy1=dy2;dx3=dx2+1;dy3=dy2;dx4=dx2-1;dy4=dy2+1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- }
- if (qs==4){
- dx2=lsx;
- if (bh==1){
- if (map[dx2][dy2-1]==0&&map[dx2][dy2+1]==0&&map[dx2+1][dy2-1]==0){
- dx1=dx2;dy1=dy2-1;dx3=dx2;dy3=dy2+1;dx4=dx2+1;dy4=dy2-1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==2){
- if (map[dx2+1][dy2]==0&&map[dx2-1][dy2]==0&&map[dx2+1][dy2+1]==0){
- dx1=dx2+1;dy1=dy2;dx3=dx2-1;dy3=dy2;dx4=dx2+1;dy4=dy2+1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==3){
- if (map[dx2][dy2+1]==0&&map[dx2][dy2-1]==0&&map[dx2-1][dy2+1]==0){
- dx1=dx2;dy1=dy2+1;dx3=dx2;dy3=dy2-1;dx4=dx2-1;dy4=dy2+1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==4){
- if (map[dx2-1][dy2]==0&&map[dx2+1][dy2]==0&&map[dx2-1][dy2-1]==0){
- dx1=dx2-1;dy1=dy2;dx3=dx2+1;dy3=dy2;dx4=dx2-1;dy4=dy2-1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- }
- if (qs==5){
- dx2=lsx;
- if (bh==1){
- if (map[dx2+1][dy2]==0){
- dx1=dx2;dy1=dy2-1;dx3=dx2+1;dy3=dy2;dx4=dx2-1;dy4=dy2;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==2){
- if (map[dx2][dy2+1]==0){
- dx1=dx2+1;dy1=dy2;dx3=dx2;dy3=dy2+1;dx4=dx2;dy4=dy2-1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==3){
- if (map[dx2-1][dy2]==0){
- dx1=dx2;dy1=dy2+1;dx3=dx2-1;dy3=dy2;dx4=dx2+1;dy4=dy2;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==4){
- if (map[dx2][dy2-1]==0){
- dx1=dx2-1;dy1=dy2;dx3=dx2;dy3=dy2-1;dx4=dx2;dy4=dy2+1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- }
- if (qs==6){
- dx2=lsx;
- if (bh==1||bh==3){
- if (map[dx2-1][dy2-1]==0&&map[dx2+1][dy2]==0){
- dx1=dx2;dy1=dy2-1;dx3=dx2-1;dy3=dy2-1;dx4=dx2+1;dy4=dy2;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==2||bh==4){
- if (map[dx2][dy2+1]==0){
- dx1=dx2-1;dy1=dy2;dx3=dx2-1;dy3=dy2+1;dx4=dx2;dy4=dy2-1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- }
- if (qs==7){
- dx2=lsx;
- if (bh==1||bh==3){
- if (map[dx2+1][dy2-1]==0&&map[dx2-1][dy2]==0){
- dx1=dx2;dy1=dy2-1;dx3=dx2-1;dy3=dy2;dx4=dx2+1;dy4=dy2-1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- if (bh==2||bh==4){
- if (map[dx2+1][dy2+1]==0){
- dx1=dx2+1;dy1=dy2;dx3=dx2;dy3=dy2-1;dx4=dx2+1;dy4=dy2+1;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return;
- }
- }
- }
- dx2=lsx0;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- }
- void zytjzs (int m){
- if (m==1){
- dx1--;dx2--;dx3--;dx4--;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- }
- if (m==2){
- dx1++;dx2++;dx3++;dx4++;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- }
- }
- void xtjzs (){
- dy1++;dy2++;dy3++;dy4++;
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- }
- void zytj (int qs,int bh,int zy){
- map[dx1][dy1]=0;map[dx2][dy2]=0;map[dx3][dy3]=0;map[dx4][dy4]=0;
- if (qs==1){
- if (zy==4){
- if (map[dx2-1][dy2]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx3+1][dy3]==0){zytjzs (2);return;}
- }
- }
- if (qs==2){
- if (bh==1||bh==3){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx2+1][dy2]==0&&map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==2||bh==4){
- if (zy==4){
- if (map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0){zytjzs (2);return;}
- }
- }
- }
- if (qs==3){
- if (bh==1){
- if (zy==4){
- if (map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx2+1][dy2]==0&&map[dx3+1][dy3]==0){zytjzs (2);return;}
- }
- }
- if (bh==2){
- if (zy==4){
- if (map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==3){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==4){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx3+1][dy3]==0){zytjzs (2);return;}
- }
- }
- }
- if (qs==4){
- if (bh==1){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx2+1][dy2]==0&&map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==2){
- if (zy==4){
- if (map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==3){
- if (zy==4){
- if (map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx2+1][dy2]==0&&map[dx3+1][dy3]==0){zytjzs (2);return;}
- }
- }
- if (bh==4){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- }
- if (qs==5){
- if (bh==1){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx3+1][dy3]==0){zytjzs (2);return;}
- }
- }
- if (bh==2){
- if (zy==4){
- if (map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==3){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx3-1][dy3]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==4){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx2+1][dy2]==0&&map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- }
- if (qs==6){
- if (bh==1||bh==3){
- if (zy==4){
- if (map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==2||bh==4){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx2+1][dy2]==0&&map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- }
- if (qs==7){
- if (bh==1||bh==3){
- if (zy==4){
- if (map[dx1-1][dy1]==0&&map[dx3-1][dy3]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx2+1][dy2]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- if (bh==2||bh==4){
- if (zy==4){
- if (map[dx2-1][dy2]==0&&map[dx3-1][dy3]==0&&map[dx4-1][dy4]==0){zytjzs (1);return;}
- }
- if (zy==6){
- if (map[dx1+1][dy1]==0&&map[dx3+1][dy3]==0&&map[dx4+1][dy4]==0){zytjzs (2);return;}
- }
- }
- }
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- }
- int xtj (int qs,int bh){
- map[dx1][dy1]=0;map[dx2][dy2]=0;map[dx3][dy3]=0;map[dx4][dy4]=0;
- if (qs==1){
- if (map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (qs==2){
- if (bh==1||bh==3){
- if (map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==2||bh==4){
- if (map[dx1][dy1+1]==0&&map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- }
- if (qs==3){
- if (bh==1){
- if (map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==2){
- if (map[dx1][dy1+1]==0&&map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0){xtjzs ();return 1;}
- }
- if (bh==3){
- if (map[dx1][dy1+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==4){
- if (map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- }
- if (qs==4){
- if (bh==1){
- if (map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==2){
- if (map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==3){
- if (map[dx1][dy1+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==4){
- if (map[dx1][dy1+1]==0&&map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0){xtjzs ();return 1;}
- }
- }
- if (qs==5){
- if (bh==1){
- if (map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==2){
- if (map[dx1][dy1+1]==0&&map[dx3][dy3+1]==0){xtjzs ();return 1;}
- }
- if (bh==3){
- if (map[dx1][dy1+1]==0&&map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==4){
- if (map[dx1][dy1+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- }
- if (qs==6){
- if (bh==1||bh==3){
- if (map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==2||bh==4){
- if (map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0){xtjzs ();return 1;}
- }
- }
- if (qs==7){
- if (bh==1||bh==3){
- if (map[dx2][dy2+1]==0&&map[dx3][dy3+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- if (bh==2||bh==4){
- if (map[dx2][dy2+1]==0&&map[dx4][dy4+1]==0){xtjzs ();return 1;}
- }
- }
- map[dx1][dy1]=3;map[dx2][dy2]=3;map[dx3][dy3]=3;map[dx4][dy4]=3;
- return 0;
- }
- int jstj (){
- for (int x=1;x<11;x++){
- if (map[x][1]==3)return 1;
- }
- return 0;
- }
- void dfpl (int fx,int fy){
- while ((fy-1)>0){
- map[fx][fy]=map[fx][fy-1];
- map[fx][fy-1]=0;
- fy--;
- }
- }
- void dftj (){
- int f;
- for (int y=19;y>0;){
- f=0;
- for (int x=1;x<11;x++){
- if (map[x][y]==3)f++;
- if (map[x][y]==0)f=0;
- }
- if (f==10){
- fs++;
- lsfs++;
- for (int x=1;x<11;x++){
- map[x][y]=0;
- dfpl (x,y);
- }
- }else{
- y--;
- }
- }
- }
阅读全文
0 0
- Microsoft visual Studio 2015 下的俄罗斯方块源程序以及修改过程
- 【工具】Visual Studio 2015的离线MSDN Microsoft help viewer 2.2 注册表修改
- Microsoft Visual Studio 2010下log4cplus的安装,集成,测试
- Microsoft Visual Studio 2010下log4cplus的安装,集成,测试
- Microsoft Visual Studio 2010下log4cplus的安装,集成,测试
- Microsoft Visual Studio 2010下log4cplus的安装,集成,测试
- microsoft visual studio 2008下的SQLserver2005配置
- 加速 Microsoft Visual Studio 2008 启动过程
- Microsoft visual Studio 2010 下 DirectX SDK 安装配置详细过程
- Microsoft visual Studio 2010 下 DirectX SDK 安装配置详细过程
- Microsoft visual Studio 2013 下 安装配置DirectX SDK 搭建DirectX开发环境详细过程
- 俄罗斯方块源程序(TC下编译通过)
- 第一时间体验 Microsoft Visual Studio 2010 Ultimate 正式版的安装(图解安装过程)
- Chrome在Visual Studio 2005下的编译过程
- Chrome在Visual Studio 2005下的编译过程 zz
- Visual Studio 下MFC的创建过程解析
- Visual Studio 2010下的OpenCV 2.4.10安装过程
- Visual Studio 2012下的OpenCV 2.4.7安装过程
- 35. Struts2_国际化&通过超链接动态加载国际化资源文件
- H3C常用命令-1
- Hibernate连接mycat实现多租户
- 轮盘赌法
- android下的linux内核编译
- Microsoft visual Studio 2015 下的俄罗斯方块源程序以及修改过程
- 常量和数据类型
- 1.1.2 一切皆概念/类型
- Wifi Direct 修改群组名称特别注意
- js中的eval 函数作用
- android 开源库
- 二叉树中两个节点的最近公共祖先(leetcode)
- Twitter 工程师谈 JVM 调优
- Java中抽象类和接口的区别