freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

五子棋網絡應用程序開發(fā)課程設計(編輯修改稿)

2024-11-09 13:50 本頁面
 

【文章內容簡介】 Top。} Sta。struct {int Status[MAX/2+2][MAX/2+2]。int MINBOX。int Step。char Graph[3][3]。char *FillGraph[9]。Sta Stack。} ChessBoard。void Gotoxy(int x, int y)//這是光標的函數(shù) {COORD coord。= x。= y。SetConsoleCursorPosition(hConsole, coord)。}void Logo(){char Wel[30]= { “Made By Lyushamp。amp。 Mirs Chen” }。printf(“ttt歡迎試用五子棋系統(tǒng)n”)。printf(“tt”)。for(int i= 0。i strlen(Wel)。++i){putchar(Wel[i])。Sleep(200)。}putchar(10)。}int Login(){int Mode, Skip= 0。char Request。if(!Skip){printf(“nn在這兒你能DIY(Do it youself!)你的棋子,每個棋子接受一個漢字”)。printf(“ Y Orz Nn”)。scanf(“%c”, amp。Request)。if(Request== 39。Y39。|| Request== 39。y39。){printf(“玩家一的 DIY 棋子”)。scanf(“%s”, [1])。[1][2]= 39。39。printf(“玩家二的 DIY 棋子”)。scanf(“%s”, [2])。[2][2]= 39。39。}}printf(“nn請選擇先手玩家:___ nn”)。printf(“nntttttt1 對應 玩家一對應 玩家二n”)。if(Request== 39。Y39。|| Request== 39。y39。)Gotoxy(10, 16)。//原函數(shù)是 第一個參數(shù)為列,后一個參數(shù)為行,把Gotoxy函數(shù)做了更改elseGotoxy(8, 16)。scanf(“%d”, amp。Mode)。if(Mode!= 1amp。amp。 Mode!= 2)return Mode% 2+ 1。elsereturn Mode。}void InitChessBiard(){int TTop= 。fflush(stdin)。= 0。= 0。= 0。[TTop][0]= 8。// 棧的0號位存儲初始化的棋盤位置[TTop][1]= 8。= 5。[0]=“┏”。[1]=“┳”。[2]=“┓”。[3]=“┣”。[4]=“╋”。[5]=“┫”。[6]=“┗”。[7]=“┻”。[8]=“┛”。strcpy([1], “○”)。strcpy([2], “●”)。memset(, 0, sizeof())。}bool Legal(int Point){if(Point 1|| Point MAX/ 2+ 1)return false。elsereturn true。}bool Currect(int X, int Y){if(Legal(X)amp。amp。 Legal(Y))return true。elsereturn false。}void ChangeCoordinates(int _X, int _Y, int *X, int *Y){*X=(_X1)* 2。*Y=(_Y1)* 4。}void Draw(){// 畫棋盤for(int i= 1。i{for(int j= 1。j{if(i== 1){if(j== 1)printf(“┏”)。else if(j== MAX)printf(“┓n”)。else if(j%2)printf(“┳”)。// 橫向占兩個坐標位,豎向占一個坐標位elseprintf(“━”)。}else if(i== MAX){if(j== 1)printf(“┗”)。else if(j== MAX)printf(“┛n”)。else if(j%2)printf(“┻”)。elseprintf(“━”)。}else{if(j== 1){if(i% 2)printf(“┣”)。elseprintf(“┃”)。}else if(j== MAX){if(i% 2)printf(“┫n”)。elseprintf(“┃n”)。}else{if(i% 2){if(j% 2)printf(“╋”)。elseprintf(“━”)。}else{if(j% 2)printf(“┃”)。elseprintf(“ ”)。}}}}}// 畫棋子for(int i= 1。i{for(int j= 1。j{int Temp_X, Temp_Y。ChangeCoordinates(i, j, amp。Temp_X, amp。Temp_Y)。if([i][j]== 1){Gotoxy(Temp_X, Temp_Y)。printf(“○”)。}else if([i][j]== 2){Gotoxy(Temp_X, Temp_Y)。printf(“●”)。}}} }int GetFillType(int X, int Y){if(X== 1){if(Y== 1)return 0。else if(Y== 16)return 2。elsereturn 1。}else if(X== 16){if(Y== 1)return 6。else if(Y== 16)return 8。elsereturn 7。}else{if(Y== 1)return 3。else if(Y== 16)return 5。elsereturn 4。} }bool StackEmpty(){if(== )return true。elsereturn false。}bool Retract(int *X, int *Y){int Temp_X, Temp_Y, TTop, FillType。if(!StackEmpty()){TTop= 。*X= [TTop][0]。*Y= [TTop][1]。[*X][*Y]= 0。// 將該點置為真正意義上的空點FillType= GetFillType(*X, *Y)。ChangeCoordinates(*X, *Y, amp。Temp_X, amp。Temp_Y)。Gotoxy(Temp_X, Temp_Y)。printf(“%s”, [FillType])。return true。}else{Gotoxy(9, 65)。printf(“您已不能悔棋”)。Sleep(300)。Gotoxy(9, 65)。printf(“”)。return false。} }bool Prompt(int Ply, int Last_X, int Last_Y){int Move_X= Last_X, Move_Y= Last_Y。int Temp_X, Temp_Y。char Opreat[2]。char *Graph= [Ply]。Gotoxy(1, 65)。printf(“按退格鍵悔棋”)。Gotoxy(3, 65)。if(Ply== 1){printf(“玩家一走棋:”)。Gotoxy(5, 65)。printf(“通過w s a d”)。}else{printf(“玩家二走棋:”)。Gotoxy(5, 65)。printf(“通過↑↓←→”)。}Gotoxy(7, 65)。printf(“按空格或回車”)。ChangeCoordinates(Move_X, Move_Y, amp。Temp_X, amp。Temp_Y)。Gotoxy(Temp_X, Temp_Y)。while(1){Opreat[0]= getch()。if(Opreat[0]== 8){if(Retract(amp。Move_X, amp。Move_Y))return false。// 該次操作為偽操作else{Gotoxy(Temp_X, Temp_Y)。continue。}}else{if(Opreat[0]== 13amp。amp。 Ply== 2|| Opreat[0]== 32amp。amp。 Ply== 1){if([Move_X][Move_Y]== 0){int TTop= ++。[Move_X][Move_Y]= Ply。[TTop][0]= Move_X。[TTop][1]= Move_Y。printf(“%s”, Graph)。return true。// 該次走棋操作有效}else{Gotoxy(9, 65)。printf(“此步無效”)。Sleep(300)。Gotoxy(9, 65)。printf(“”)。Gotoxy(Temp_X, Temp_Y)。continue。}}if(Ply== 2){if(Opreat[0]!=32)continue。Opreat[1]= getch()。}if(Opreat[0]==32amp。amp。 Opreat[1]== 72|| Opreat[0]== 39。w39。|| Opreat[0]== 39。W39。){if(Currect(Move_X1, Move_Y)){Move_X= 1。}}else if(Opreat[0]==32amp。amp。 Opreat[1]== 80|| Opreat[0]== 39。s39。|| Opreat[0]== 39。S39。){if(Currect(Move_X+ 1, Move_Y)){Move_X+= 1。}}else if(Opreat[0]==32amp。amp。 Opreat[1]== 75|| Opreat[0]== 39。a39。|| Opreat[0]== 39。A39。){if(Currect(Move_X, Move_Y1)){Move_Y= 1。}}else if(Opreat[0]==32amp。amp。 Opreat[1]== 77|| Opreat[0]== 39。d39。|| Opreat[0]== 39。D39。){if(Currect(Move_X, Move_Y+ 1)){Move_Y+= 1。}}ChangeCoordinates(Move_X, Move_Y, amp。Temp_X, amp。Temp_Y)。Gotoxy(Temp_X, Temp_Y)。}} }bool Win(int Ply, int X, int Y){// int Count= 1, Flag= 0。for(int i= X1, k= X+ 1。Legal(i)|| Legal(k)。i, k++){int LastCount= Count。if(Legal(i)amp。amp。 [i][Y]== Ply){Count++。}if(Legal(k)amp。amp。 [k][Y]== Ply){Count++。}if(LastCount== Count)break。if(Count== ){Flag= 1。return true。}}// 左右查找是否滿足條件if(!Flag){Count= 1。for(int i= Y1, k= Y+ 1。Legal(i)|| Legal(k)。i, k++){int LastCount= Count。if(Legal(i)amp。amp。 [X][i]== Ply){Count++。}if(Legal(k)amp。amp。 [X][k]== Ply){Count++。}if(LastCount== Count)break。if(Count== ){Flag= 1。return true。}}}// 以X正軸為參考軸if(!Flag){Count= 1。for(int i1= X1, j1= Y+ 1, i2= X+ 1, j2= Y1。Legal(i1)amp。amp。 Legal(j1)|| Legal(i2)amp。amp。 Legal(j2)。i1, j1++, i2++, j2){int LastCount= Count。if(Legal(i1)amp。amp。 Legal(j1)amp。amp。 [i1][j1]== Ply){Count++。}if(Legal(i2)amp。amp。 Legal(j2)amp。amp。 [i2][j2]== Ply){Count++。}if(LastCount== Count)break。if(Count== ){Flag= 1。return true。}}}// if(!Fl
點擊復制文檔內容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1