今天我新開了一個專欄,在這里我將會一步步帶大家寫出一個國際象棋小游戲
那么今天我就先帶大家寫一下定義各種棋的代碼,這里我們需要用到struct
創(chuàng)新互聯(lián)公司于2013年開始,先為朝陽等服務建站,朝陽等地企業(yè),進行企業(yè)商務咨詢服務。為朝陽企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。上代碼:
#includeusing namespace std;
struct Qi{
string name;
? ? char id;
short a[8];
}qi[6];
這里我們一行一行的看:
string name;
這是這個棋的名字
char id;
。。。這是,代表它的字母(記錄要用)
short a[8];
表示在i個方向能不能走,-1只能往這個方向攻擊,0不能走,1只能走一步,2無限步(馬都賦為-2)
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
前方 | 后方 | 左方 | 右方 | 左前方 | 右前方 | 左后方 | 右后方 |
既然定義都寫出來,那我們就把賦值也寫出來吧
我們在再加一個賦值函數(shù),方便賦值(我懶得用數(shù)組)
名字要用一個字,方便輸出整齊
void qi_fuzhi(int ii,string _name,char iid,short a1,short a2,short a3,short a4,short a5,short a6 ,short a7,short a8){
qi[ii].name=_name;
? ? qi[ii].id=iid;
qi[ii].a[0]=a1;qi[ii].a[1]=a2;
qi[ii].a[2]=a3;qi[ii].a[3]=a3;
qi[ii].a[4]=a4;qi[ii].a[5]=a5;
qi[ii].a[6]=a7;qi[ii].a[7]=a8;
}
小兵(只能往前走,攻擊只能斜走)
qi_fuzhi(0,"兵",' ',1,0,0,0,-1,-1,0,0);
車(橫豎走任意步)
qi_fuzhi(1,"車",'R',2,2,2,2,0,0,0,0);
象(斜走任意步)
qi_fuzhi(2,"象",'B',0,0,0,0,2,2,2,2);
馬(走日)
qi_fuzhi(3,"馬",'N'-2,-2,-2,-2,-2,-2,-2,-2);//因為比較特殊,先都填-2,后續(xù)進行處理
后(任意方向走無限步)
qi_fuzhi(4,"后",'Q',2,2,2,2,2,2,2,2);
王(任意方向走一步)
qi_fuzhi(5,"王",'K',1,1,1,1,1,1,1,1);
那么今天就寫到這里啦,今天完整代碼:
#includeusing namespace std;
struct Qi{
string name;
char id;
short a[8];
}qi[6];
void qi_fuzhi(int ii,string _name,char iid,short a1,short a2,short a3,short a4,short a5,short a6 ,short a7,short a8){
qi[ii].name=_name;
qi[ii].id=iid;
qi[ii].a[0]=a1;qi[ii].a[1]=a2;
qi[ii].a[2]=a3;qi[ii].a[3]=a3;
qi[ii].a[4]=a4;qi[ii].a[5]=a5;
qi[ii].a[6]=a7;qi[ii].a[7]=a8;
}
void csh(){
qi_fuzhi(0,"兵",' ',1,0,0,0,-1,-1,0,0);
qi_fuzhi(1,"車",'R',2,2,2,2,0,0,0,0);
qi_fuzhi(2,"象",'B',0,0,0,0,2,2,2,2);
qi_fuzhi(3,"馬",'N',-2,-2,-2,-2,-2,-2,-2,-2);
qi_fuzhi(4,"后",'Q',2,2,2,2,2,2,2,2);
qi_fuzhi(5,"王",'K',1,1,1,1,1,1,1,1);
}
int main(){
csh();
return 0;
}
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧