當前位置:首頁 » 操作系統 » 消除游戲演算法

消除游戲演算法

發布時間: 2023-10-18 09:17:17

A. C++一個最簡單的數字三消游戲,要求是消除完之後數字會落下

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#defineN6
chara[N][N];
intb[N];
voiddown(intcol,intn){
inti,j;
intk;
for(k=0;k<n;k++){
for(i=b[k];i>=0;i--){
a[i+3][col]=a[i][col];
}
for(i=0;i<(k+1)*3;i++){
a[i][col]='v';
}
}
}
voideliminate(){
inti,j;
intk;
for(i=0;i<N;i++){
b[i]=0;
}
for(j=0;j<N;j++){
k=0;
for(i=N-1;i>=0;i--){
if(i+1<N&&i+2<N){
if(a[i+1][j]=='*'&&a[i+2][j]=='*'&&a[i][j]=='*'){
a[i][j]=a[i+1][j]=a[i+2][j]='';
b[k]=i-1;
k++;
}
}
}
down(j,k);
}
}

voidprint()
{
inti,j;
for(i=0;i<N+2;i++){
printf("#");
}
printf(" ");
for(i=0;i<N;i++){
printf("#");
for(j=0;j<N;j++){
printf("%c",a[i][j]);
}
printf("# ");
}
for(i=0;i<N+2;i++){
printf("#");
}
printf(" ");
}
intmain()
{
while(1){
printf("Anewgame: ");
inti;
intj;
for(i=0;i<N;i++){
for(j=0;j<N;j++){
a[i][j]=rand()%2==0?'':'*';
}
}
print();
printf("Pleaseinputdtoeliminatethe3*: ");
charc;
c=getchar();getchar();
if(c=='d'){
eliminate();
}
print();
printf(" ");
if((c=getchar())=='q')break;
system("cls");
}
}

熱點內容
安卓修改音頻采樣率怎麼修改 發布:2024-11-30 20:24:12 瀏覽:281
2核伺服器能搭建幾個ip 發布:2024-11-30 20:19:30 瀏覽:55
iphone有緩存嗎 發布:2024-11-30 20:18:16 瀏覽:194
oracleexp腳本 發布:2024-11-30 20:09:00 瀏覽:497
jsf上傳文件 發布:2024-11-30 20:08:48 瀏覽:600
linuxwindows編程 發布:2024-11-30 20:08:33 瀏覽:527
電腦配置選擇什麼版本 發布:2024-11-30 20:08:27 瀏覽:728
cfhd官網要什麼配置 發布:2024-11-30 19:45:47 瀏覽:949
vbs腳本文件 發布:2024-11-30 19:37:54 瀏覽:830
電腦視頻太多可以放到伺服器上嗎 發布:2024-11-30 19:13:25 瀏覽:361