c++数字华容道

#include 
#include 
#include 
using namespace std;
int num[10005]={0};
int n,p[105][105],x,y,sum;
bool iswin(){
    int f=1;
    for(int i=1;i<=n-1;i++){
        for(int j=1;j<=n;j++){
            if(p[i][j]!=f)return false;
            f++;
        }
    }
    for(int j=1;j<=n-1;j++){
        if(p[n][j]!=f)return false;
        f++;
    }
    return true;
}
int main(){
    srand(time(NULL));
    cout<<"Welcome to play n-puzzle!Make sure that you're using Windows System..."<>n;
    x=rand()%n+1;
    y=rand()%n+1;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=n;j++){
            if(i==x && j==y)continue;
            int k=rand()%(n*n-1)+1;
            while(num[k])k=rand()%(n*n-1)+1;
            p[i][j]=k;
            num[k]=1;
        }
    }
    for(int i=1;i<=n*n;i++)num[i]=0;
    while(!iswin()){
        char a;
        system("cls");
        cout<<"---------------------------------"<

你可能感兴趣的:(小游戏系列,c++)