C語言編寫簡單遊戲:剪刀、石頭、布

  • 作者:由 匿名使用者 發表于 收藏
  • 2022-12-24

C語言編寫簡單遊戲:剪刀、石頭、布匿名2006.06.14 回答

呵呵,這是我去年初學C語言時寫的,當時水平低,高手就不要指責了~~~

#include

#include

#include

#include

char x,response;

int y,draw,win,loss;

void main()

{

c: draw = 0,win = 0,loss = 0;

d: system(“cls”);

printf(“歡迎挑戰\n\n”);

printf(“0:石頭 1:剪子 2:布\n”);

printf(“\n請你出拳:”);

if((x = getch()) == ‘0’)

printf(“石頭”);

else if(x == ‘1’)

printf(“剪子”);

else if(x == ‘2’)

printf(“布”);

else

{

printf(“請按0-2\n按任意鍵繼續\n”);

getch();

goto d;

}

srand((unsigned)time(NULL));

y = rand()%3;

switch(y)

{

case 0:

printf(“\n\n電腦出拳:石頭\n\n”);

break;

case 1:

printf(“\n\n電腦出拳:剪子\n\n”);

break;

case 2:

printf(“\n\n電腦出拳:布\n\n”);

break;

}

if(x == ‘0’)

{

switch(y)

{

case 0:

printf(“平局”);

draw++;

break;

case 1:

printf(“你贏了”);

win++;

break;

case 2:

printf(“你輸了”);

loss++;

break;

}

}

else if(x == ‘1’)

{

switch(y)

{

case 0:

printf(“你輸了”);

loss++;

break;

case 1:

printf(“平局”);

draw++;

break;

case 2:

printf(“你贏了”);

win++;

break;

}

}

else if(x == ‘2’)

{

switch(y)

{

case 0:

printf(“你贏了”);

win++;

break;

case 1:

printf(“你輸了”);

loss++;

break;

case 2:

printf(“平局”);

draw++;

break;

}

}

printf(“\n\n你的戰況:贏%d局 輸%d局 平%d局”, win, loss, draw);

if(win <= loss+draw)

{

printf(“\n\n還不服氣?\nY or N?\n”);

response=getch();

if(response == ‘Y’ || response == ‘y’ || response == 13)

{

printf(“\n戰況清零?\nY or N?\n”);

response = getch();

if(response == ‘Y’ || response == ‘y’ || response == 13)

{

goto c;

}

goto d;

}

}

else

{

printf(“\n\n厲害,繼續?\nY or N?\n”);

response = getch();

if(response == ‘Y’ || response == ‘y’ || response == 13)

{

printf(“\n戰況清零?\nY or N?\n”);

response = getch();

if(response == ‘Y’ || response == ‘y’ || response == 13)

{

goto c;

}

goto d;

}

}

}

Top