當前位置:首頁 » 編程語言 » c語言模擬石頭剪刀布游戲
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言模擬石頭剪刀布游戲

發布時間: 2022-10-18 08:59:35

1. 用c語言編寫一個剪刀石頭布的游戲,簡單點最好,不要用太復雜的c語言知識,c語言剛學。

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

/*************\
* 剪刀 石頭 布 *
* 最簡單小游戲 *
\*************/

int main(void){
char gesture[3][10] = {"scissor","stone","cloth"};
int man, computer, result, ret;
/*隨機數初始化函數*/
srand(time(NULL));
while(1){
computer = rand()%3;
printf("\nInput your gesture 0-scissor 1-stone 2-cloth:\n");
ret = scanf("%d", &man);
if(ret !=1 || man<0 || man>2){
printf("Invalid input!\n");
return 1;
}
printf("Your gesture:%s\tComputer's gesture: %s\n",
gesture[man], gesture[computer]
);
result = (man - computer + 4) %3 -1;
if(result > 0)
printf("YOU WIN!\n");
else if(result == 0)
printf("Draw!\n");
else
printf("You lose!\n");
}
return 0;

2. 用c語言編寫石頭剪刀布的游戲要求如下

用誒語言來編寫一個石頭剪刀布的游戲,那麼就是。然後做一個設定,因為你得設定兩個人去玩兒,因為剪刀石頭布。你需要兩個又紅又殘忍。

3. 用c語言做一個石頭剪刀布的游戲

用1、2、3來表示剪刀、石頭、布,然後先用scanf函數讀取用戶的輸入,再用rand函數產生一個隨機數,最後進行比較就可以了。
#include <stdio.h>
#include <time.h>
#include <stdlib.h>

void main()
{
int com,user;
char c;

srand((unsigned)time(NULL)); //初始化隨機數,如果沒有這條語句,每次運行電腦產生的隨機數序列都是一樣的
printf("進入游戲\n");
do{
printf("請出拳(1.剪刀、2.石頭、3.布):");
scanf("%d",&user);
com=rand()%3+1; //產生1-3范圍內的隨機數
printf("電腦出%s\n",com==1?"剪刀":com==2?"石頭":"布");
switch(com-user) //用電腦產生的數和用戶輸入的數的差值來判斷勝負
{
case 0:
printf("平手\n");
break;
case 1:
case -2:
printf("電腦贏了\n");
break;
case -1:
case 2:
printf("你贏了\n");
}
printf("繼續游戲按Y鍵、其它鍵退出");
getchar();
c=getchar();
}while(c=='y' || c=='Y');
printf("已經退出遊戲");
}

4. c語言編一個簡單的剪刀石頭布游戲

用1、2、3來表示剪刀、石頭、布,然後先用scanf函數讀取用戶的輸入,再用rand函數產生一個隨機數,最後進行比較就可以了。
#include
#include
#include
void
main()
{
int
com,user;
char
c;
srand((unsigned)time(null));
//初始化隨機數,如果沒有這條語句,每次運行電腦產生的隨機數序列都是一樣的
printf("進入游戲\n");
do{
printf("請出拳(1.剪刀、2.石頭、3.布):");
scanf("%d",&user);
com=rand()%3+1;
//產生1-3范圍內的隨機數
printf("電腦出%s\n",com==1?"剪刀":com==2?"石頭":"布");
switch(com-user)
//用電腦產生的數和用戶輸入的數的差值來判斷勝負
{
case
0:
printf("平手\n");
break;
case
1:
case
-2:
printf("電腦贏了\n");
break;
case
-1:
case
2:
printf("你贏了\n");
}
printf("繼續游戲按y鍵、其它鍵退出");
getchar();
c=getchar();
}while(c=='y'
||
c=='y');
printf("已經退出遊戲");
}

5. c語言剪刀石頭布小游戲

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

char sjb(); /* 電腦出拳 */
int iswin(char rc,char jc); /* 判斷輸贏:1|0|-1=人贏|平局|電腦贏 */
int main(){
char rc,jc,jx='Y';
int jg;
while(1){
jc=sjb();
printf("(J)ian, (S)hitou, huo(B)u :");
scanf("%c",&rc);
if(rc>='a' && rc<='z')
rc-=32;
if( rc=='J' || rc=='S' || rc=='B' ){
jg=iswin(rc,jc);
printf("你出了%c,電腦出了%c。",rc,jc);
switch(jg){
case -1:
printf("遺憾,你輸了!\n"); break;
case 0:
printf("平局!\n"); break;
case 1:
printf("恭喜,你贏了!\n");
}
}else
printf("選擇錯誤!\n");
printf("再來一局?(y/n)");
getchar();
scanf("%c",&jx);
getchar();
if(jx!='Y' && jx!='y')
break;
}
return 0;
}

char sjb(){
char c;
int i;
srand(time(0));
i=rand()%3;
switch(i){
case 0:
c='J'; break;
case 1: c='S'; break;
case 2: c='B';
}
return c;
} /* sjb() */

int iswin(char rc,char jc){
int jg;
if(rc=='J' && jc=='B' || rc=='S' && jc=='J' || rc=='B' && jc=='S' )
jg=1; /* 人贏 */
else if(rc==jc)
jg=0; /* 平局 */
else
jg=-1; /* 人輸 */
return jg;
} /* iswin */

6. 用C語言如何編寫一個石頭剪子布的程序

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

void main()

{

int com,user;

char c;

srand((unsigned)time(NULL)); //初始化隨機數,如果沒有這條語句,每次運行電腦產生的隨機數序列都是一樣的

printf("進入游戲 ");

do{

printf("請出拳(1.剪刀、2.石頭、3.布):");

scanf("%d",&user);

com=rand()%3+1; //產生1-3范圍內的隨機數

printf("電腦出%s ",com==1?"剪刀":com==2?"石頭":"布");

switch(com-user) //用電腦產生的數和用戶輸入的數的差值來判斷勝負

{

case 0:

printf("平手 ");

break;

case 1:

case -2:

printf("電腦贏了 ");

break;

case -1:

case 2:

printf("你贏了 ");

}

printf("繼續游戲按Y鍵、其它鍵退出");

getchar();

c=getchar();

}while(c=='y' || c=='Y');

printf("已經退出遊戲");

}

(6)c語言模擬石頭剪刀布游戲擴展閱讀

C++編程: 石頭剪子布

#include<cstdio>

#include<iostream>

using namespace std;

int main()

{

int n;

char a[10],b[10];

cin>>n;

int c[n+3];

for(int i=1;i<=n;i++)

{

cin>>a>>b;

if(a[0]=='R')

{

if(b[0]=='R')

{

c[i]=0;

}

if(b[0]=='S')

{

c[i]=1;

}

if(b[0]=='P')

{

c[i]=2;

}

}

else if(a[0]=='S')

{

if(b[0]=='R')

{

c[i]=2;

}

if(b[0]=='S')

{

c[i]=0;

}

if(b[0]=='P')

{

c[i]=1;

}

}

else if(a[0]=='P')

{

if(b[0]=='R')

{

c[i]=1;

}

if(b[0]=='S')

{

c[i]=2;

}

if(b[0]=='P')

{

c[i]=0;

}

}

}

for(int i=1;i<=n;i++)

switch(c[i])

{

case 0:

{

printf("Tie ");break;

}

case 1:

{

printf("Player1 ");break;

}

case 2:

{

printf("Player2 ");break;

}

}

return 0;

}

7. 用C語言編寫一個石頭剪子布游戲,具體要求如下,高分急求

這個的事技術人員 弄 一般人弄不來

8. 用C語言如何編寫一個石頭剪子布游戲

剛剛的有點問題,現在改好了:
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>
char name[100],way[3][10]={"石頭","剪子","布"},mode_name[2][20]={"三局兩勝","五局三勝"};
void new_game(int mode,int *p_win,int * p_lose,int *p_tide){
char cmd[10];
int computer,user,win=0,lose=0;
int cnt[2]={3,5};
printf("***當前模式:\t%s\n",mode_name[mode]);
for(int i=0;i<cnt[mode];i++){
printf("***1 -- 石頭;\t 2 -- 剪子\t 3 -- 布\n");
fgets(cmd,9,stdin);
user=(cmd[0]-'1')%3;
if(user<0)user+=3;
computer=rand()%3;
printf("***%-10s:%s\n",name,way[user]);
printf("***%-10s:%s","電腦",way[computer]);
if(computer==user)
{
printf("\t\t平\n");
}
else if(user-computer==-1 || user-computer==2)
{
printf("\t%s\t贏\n",name);
win++;
}
else
{
printf("\t電腦\t贏\n");
lose++;
}
if(win>lose+cnt[mode]-i-1 || lose>win+cnt[mode]-i-1)
break;
}
if(win>lose)
{
printf("恭喜!該局你贏家了!\n");
(*p_win)++;
}
else if(win<lose)
{
(*p_lose)++;
printf(" 可惜!,你輸了本局!\n");
}
else
{
(*p_tide)++;
printf(" 此局平局!\n");
}
}
int main(){
srand(time(0));
char cmd[10];
int mode=0;
int win,lose,tide;
win=lose=tide=0;
printf("請輸入玩家姓名:\t");
fgets(name,99,stdin);
name[strlen(name)-1]='\0';
while(1){
printf("/******************石頭剪子布游戲 ******************\n");
printf("***玩家:\t%s\n",name);
printf("***比賽情況:\t贏:\t%d\t輸:\t%d\t平:\t%d\n",win,lose,tide);
printf("***當前模式:\t%s\n",mode_name[mode]);
printf("***N -- 開始游戲;\tC -- 切換模式;\tQ -- 退出;\n");
fgets(cmd,9,stdin);
if(cmd[0]=='N' || cmd[0]=='n')
new_game(mode,&win,&lose,&tide);
else if(cmd[0]=='Q' || cmd[0]=='q')
break;
else
mode=1-mode;
}
return 0;
}