C语言设计论文 联系客服

发布时间 : 星期四 文章C语言设计论文更新完毕开始阅读57cb4e6127d3240c8447efc6

辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)

if(num[i+1][j]==10) x++;

if(num[i][j-1]==10) x++;

if(num[i][j+1]==10) x++;

if(num[i+1][j-1]==10) x++;

if(num[i+1][j+1]==10) x++; }

else if(i==9) {

if(num[i-1][j]==10) x++;

if(num[i][j-1]==10) x++;

if(num[i][j+1]==10) x++;

if(num[i-1][j-1]==10) x++;

if(num[i-1][j+1]==10) x++; } else {

if(num[i-1][j]==10) x++;

if(num[i-1][j+1]==10) x++;

if(num[i][j+1]==10) x++;

if(num[i+1][j+1]==10) x++;

if(num[i+1][j]==10) x++;

if(num[i+1][j-1]==10) x++;

if(num[i][j-1]==10) x++;

if(num[i-1][j-1]==10) x++; }

return(x);

10

辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)

}

funcheck(int i,int j)/*开始找无雷*/ {

scorenum--;

if(p[i][j]==0&&num[i][j]!=10) {

setfillstyle(SOLID_FILL,7);/*显示无雷区*/

bar(200+j*20-7,100+i*20-7,200+j*20+7,100+i*20+7); num[i][j]=-1; }

else if(p[i][j]!=0) {

sprintf(score,\输出雷数*/ setcolor(RED);

outtextxy(195+j*20,95+i*20,score); num[i][j]=-1; return ; }

if(i!=0&&num[i-1][j]!=-1&&num[i-1][j]!=10)/*第归开始*/ funcheck(i-1,j);

if(i!=0&&j!=9&&num[i-1][j+1]!=-1&&num[i-1][j+1]!=10) funcheck(i-1,j+1);

if(j!=9&&num[i][j+1]!=-1&&num[i][j+1]!=10) funcheck(i,j+1);

if(j!=9&&i!=9&&num[i+1][j+1]!=-1&&num[i+1][j+1]!=10) funcheck(i+1,j+1);

if(i!=9&&num[i+1][j]!=-1&&num[i+1][j]!=10) funcheck(i+1,j);

if(i!=9&&j!=0&&num[i+1][j-1]!=-1&&num[i+1][j-1]!=10) funcheck(i+1,j-1);

if(j!=0&&num[i][j-1]!=-1&&num[i][j-1]!=10) funcheck(i,j-1);

if(i!=0&&j!=0&&num[i-1][j-1]!=-1&&num[i-1][j-1]!=10) funcheck(i-1,j-1); }

playgame()/*游戏过程*/ {int i,j,numx; for(i=0;i<10;i++) for(j=0;j<10;j++)

p[i][j]=tongji(i,j);/*把标记有几个雷的数字都存放起来*/ while(!kbhit()) {

if(LeftPress())/*左键盘按下*/

11

辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)

{

MouseGetXY();

if(MouseX>280&&MouseX<300&&MouseY>65&&MouseY<85)/*重新来*/ {

MouseOff(); again=1; break; }

if(MouseX>190&&MouseX<390&&MouseY>90&&MouseY<290)/*是否在游戏范围内*/ {

j=(MouseX-190)/20;/*x坐标*/ i=(MouseY-90)/20;/*y坐标*/ if(num[i][j]!=-1) {

if(num[i][j]==10)/*中雷*/ {

MouseOff();

gameove();/*失败*/ break; }

else/*非中雷*/ {

MouseOff();

numx=tongji(i,j);

if(numx==0)/*周围没地雷*/

funcheck(i,j);/*开始找无雷*/ else/*有地雷*/ {

sprintf(score,\输出雷数*/ setcolor(RED);

outtextxy(195+j*20,95+i*20,score); scorenum--; }

MouseOn(); num[i][j]=-1;

if(scorenum<1)/*胜利了*/ {

setcolor(11);

settextstyle(0,0,2);

outtextxy(230,30,\ break; } } }

12

辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)

} } } }

main()

{int gd=DETECT,gr;

registerbgidriver(EGAVGA_driver); initgraph(&gd,&gr,\ loop: begain();

playgame();/*具体游戏*/

if(again)/*游戏中重新开始*/ {

again=0; goto loop; }

MouseOn();

while(!kbhit())/*重新来*/ {

if(LeftPress()) {

MouseGetXY();/*失败后重新来*/

if(MouseX>280&&MouseX<300&&MouseY>65&&MouseY<85) goto loop; } }

MouseOff(); closegraph(); }

13