?? 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 + -