📄 qpfg.cpp
字号:
// qpfg.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include<iostream.h>
#include <iomanip.h>//参数化输入/输出(新学会的,呵呵,)
int tile=1;
const int max=16;
int board[max][max];
void chessboard(int tr,int tc,int dr,int dc,int size)
{
if(size==1)return;
int t=tile++,
s=size/2;
if(dr<tr+s&&dc<tc+s)
chessboard(tr,tc,dr,dc,s);
else{
board[tr+s-1][tc+s-1]=t;
chessboard(tr,tc,tr+s-1,tc+s-1,s);
}
if(dr<tr+s&&dc>=tc+s)
chessboard(tr,tc+s,dr,dc,s);
else
{
board[tr+s-1][tc+s]=t;
chessboard(tr,tc+s,tr+s-1,tc+s,s);
}
if(dr>=tr+s&&dc<tc+s)
chessboard(tr+s,tc,dr,dc,s);
else
{
board[tr+s][tc+s-1]=t;
chessboard(tr+s,tc,tr+s,tc+s-1,s);
}
if(dr>=tr+s&&dc>=tc+s)
chessboard(tr+s,tc+s,dr,dc,s);
else
{
board[tr+s][tc+s]=t;
chessboard(tr+s,tc+s,tr+s,tc+s,s);
}
}
void OutputBoard(int size)
{
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size; j++)
cout<<setw(4)<<board[i][j]<<" ";
cout << endl;
}
}
void main(){
int dr=0,dc=0,size;
cout<<"请输入棋盘的大小:"<<endl;
cin>>size;
cout<<"请输入特殊棋盘的位置:"<<endl;
cin>>dr;
cin>>dc;
cout<<endl;
chessboard(0,0,dr,dc,size);
OutputBoard(size);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -