南京航空航天大學(xué)金城學(xué)院3_第1頁
南京航空航天大學(xué)金城學(xué)院3_第2頁
南京航空航天大學(xué)金城學(xué)院3_第3頁
南京航空航天大學(xué)金城學(xué)院3_第4頁
南京航空航天大學(xué)金城學(xué)院3_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、南京航空航天大學(xué)金城學(xué)院C語言程序設(shè)計(jì)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告題目:五子棋游戲班級(jí):20110222姓名:張沖學(xué)號(hào):2011022221指導(dǎo)老師:謝金國(guó)日期:2012年 2月 16日一、課題要求:在一個(gè)方陣上通過兩人對(duì)弈的形式,依次在棋盤上放置兩種 顏色的棋子,哪一方先讓五個(gè)棋子形成一條直線(包括橫、豎、 對(duì)角線3個(gè)方向),即為獲勝,本程序?qū)崿F(xiàn)用鍵盤控制的五子棋 游戲。游戲初始運(yùn)行界面應(yīng)為如下:游戲操作規(guī)則:按左右上下方向鍵移動(dòng)棋子按空格鍵確定落棋子禁止在棋盤外按空格你是否接受上述的游戲規(guī)則(Y/N)如果輸入Y,才可以進(jìn)行游戲,進(jìn)入正式的游戲界面,要繪 制五子棋的棋盤,設(shè)置棋子顏色。二、程序設(shè)計(jì)代碼(

2、C語言)#include#include#include#include#include#define LEFT 0X4b00#define RIGHT 0X4d00#define DOWN 0X5000#define UP 0X4800#define ESC 0X011b#define SPACE 0X3920#define BILI 20#define JZ 4#define JS 3#dfine N19int boxNN;int step_x,step_y;int key;int flag=1;void draw_box();void draw_cicle(int x,int y,int

3、 color)void change();void judgewho(int x,int y);void judgekey();int judgeresult(int x,int y);void attention();void attention()char ch;window(1,1,80,25);textbackground(LIGHTBLUE);textcolor(YELLOW);clrscr();gotoxy(15,2);printf(游戲操作規(guī)則:”);gotoxy(15,4);printf(Play Rules:);gotoxy(15,6);printf(1、按左右上下方向鍵移動(dòng)

4、棋子,gotoxy(15,8);printf(1.Press Left,Right,Up,Down Key to move piece); gotoxy(15,10);printf(2、按空格確定落棋子,gotoxy(15,12);printf(2.Press Space to place the Piece);gotoxy(15,14);printf(3、禁止在棋盤外按空格”);gotoxy(15,16);printf(3.DO NOT press Space outside of the chessboard);gotoxy(15,18);printf(你是否接受上述的游戲規(guī)則(Y/N);

5、 gotoxy( 15,20);printf(Do you accept the above Playing Rules?Y/N:);while(1)gotoxy(60,20);ch=getche();if(ch=Yllch=y)break;else if(ch=Nllch=n)window(1,1,80,25);textbackground(BLACK);textcolor(LIGHTGRAY);clrscr();exit(0);gotoxy(51,12);Printf();void draw_box()int x1,x2,y1,y2;setbkcolor(LIGHTBLUE);setcol

6、or(YELLOW);gotoxy(7,2);printf(Left,Right,Up,Down KEY to move,Space to put ,ESC-quit.);for(x1=1,y1=1,y2=18;x1=18;x1+)line(x1+JZ)大 BILI,(y1+JS)大 BILI,(x1+JZ)大 BILI,(y2+JS)大 BILI);for(x1=1,y1=1,x2=18;y1=18,y1+)line(x1+JZ)大 BILI,(y1+JS)大 BILI,(x2+JZ)大 BILI,(y1+JS)大 BILI);For(x1=1;x1=18;x1+)For(y1=1;y1=1

7、8;y1+)Boxx1y1=0;Void draw_circle(int x,int y,int color)Setcolor(color);Setlinestyle(SOLID_LINE,0,1);X=(x+JZ)大 BILI;Y=(y+JS)大 BILI;Circle(x,y,8);Void judgekey()Int i;Int j;Switch(key)Case LEFT;If(step_x-1=1;i-) If(boxij=0) Draw_circle(step_x,step_y,LIGHTBLUE); Break;If(i18)Break;Else For(i=step_x+1,j

8、=step_y;i18)break;Step_x=i;Judgewho(step_x,step_y);Break; Case DOWN:If(step_y+1)18Break;Else For(i=step_x,j=step_y+1;j18)break;Step_y=j;Judgewho(step_x,step_y); Break;Case UP;If(step_y-1)=1;j-)If(boxij=0) Draw_circle(step_x,step_y,LIGHTBLUE);Break;If(i=1&step_x=1&step_y=1;j-) If(boxjk=flag) n1+;else

9、 break; /*水平向右數(shù)*/ For(j=x,k=y,j=5) Return(1);Break;/*垂直向上數(shù)*/N1=0;N2=0;For(j=x,k=y,k=1,k-) If(boxjk=flag)N1+;else break;/*垂直向下數(shù)*/For(j=x,k=y;k=5) Return(1); Break; /*向左上方數(shù)*/N1=0;N2=0;For(j=x,k=y;j=1,k=1;j-,k-)If(boxjk=flag)N1+;else break;/*向右下方數(shù)*/For(j=x,k=y;j=18,k=5)Return(1);Break;/*向右上方數(shù)*/N1=0;N2=

10、0;For(j=x,k=y;j=1;j+,k-)If(boxjk=flag)N1+;else break;/*向左下方數(shù)*/For(j=x,k=y;j=1,k=5)Return(1);Break;Return(0);Break; void main()(Int gdriver=VGA,gmode=VGAHI;Clrscr();Attention();Initgraph(&gdriver,&gmode,c:tc);/*setwritemode(XOR_PUT);*/Flag=1;Draw_box();DoStep_x=0;Step_y=0;/*draw_circle(step_x,step_y,8);*/Judgewho(step_x-1,step_y-1);DoWhile(bioskey(1)=0);Key=bioskey(0);Judgekey();While(key!=SPACE&key!=ESC)While(key!=ESC);Closegraph();三、流程圖設(shè)計(jì)四、心得體會(huì)第一次接觸課程設(shè)計(jì),在完成這份任務(wù)的同

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論