剛剛的有點問題,現(xiàn)在改好了:
創(chuàng)新互聯(lián)專注于寧武企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城系統(tǒng)網(wǎng)站開發(fā)。寧武網(wǎng)站建設(shè)公司,為寧武等地區(qū)提供建站服務(wù)。全流程按需搭建網(wǎng)站,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
#includestdio.h
#includetime.h
#includestdlib.h
#includestring.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;icnt[mode];i++){
printf("***1 -- 石頭;\t 2 -- 剪子\t 3 -- 布\n");
fgets(cmd,9,stdin);
user=(cmd[0]-'1')%3;
if(user0)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(winlose+cnt[mode]-i-1 || losewin+cnt[mode]-i-1)
break;
}
if(winlose)
{
printf("恭喜!該局你贏家了!\n");
(*p_win)++;
}
else if(winlose)
{
(*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;
}
用簡單的c語言實現(xiàn):
#include
int
main()
{
int
num1,num2
;
printf("請玩家輸入1表示石頭、2表示剪子、3表示布:");
scanf("%d",num1);
printf("請玩家輸入1表示石頭、2表示剪子、3表示布:");
scanf("%d",num2);
//枚舉可能出現(xiàn)的各種情況
if(num1==1
num2==1)
//
1
1
{
printf("玩家一選擇石頭
,玩家二選擇石頭,平局\n");
}
else
if(num1==1
num2==2)
//
1
2
{
printf("玩家一選擇石頭
,玩家二選擇剪子,玩家一勝利\n");
}
else
if(num1==1
num2==3)
//1
3
{
printf("玩家一選擇石頭
,玩家二選擇布,玩家二勝利\n");
}
else
if(num1==2
num2==1)
//2
1
{
printf("玩家一選擇剪子
,玩家二選擇石頭,玩家二勝利\n");
}
else
if(num1==2
num2==2)
//2
2
{
printf("玩家一選擇剪子
,玩家二選擇剪子,平局\n");
}
else
if(num1==2
num2==3)
//2
3
{
printf("玩家一選擇剪子
,玩家二選擇布,玩家一勝利\n");
}
else
if(num1==3
num2==1)
//3
1
{
printf("玩家一選擇布
,玩家二選擇石頭,玩家一勝利\n");
}
else
if(num1==3
num2==2)
//3
2
{
printf("玩家一選擇布
,玩家二選擇剪子,玩家二勝利\n");
}
else
//3
3
{
printf("玩家一選擇布
,玩家二選擇布,平局\n");
}
return
0;
}
#include stdio.h
#include time.h
#include stdlib.h
void main()
{
int com,user;
char c;
srand((unsigned)time(NULL)); //初始化隨機數(shù),如果沒有這條語句,每次運行電腦產(chǎn)生的隨機數(shù)序列都是一樣的
printf("進入游戲\n");
do{
printf("請出拳(1.剪刀、2.石頭、3.布):");
scanf("%d",user);
com=rand()%3+1; //產(chǎn)生1-3范圍內(nèi)的隨機數(shù)
printf("電腦出%s\n",com==1?"剪刀":com==2?"石頭":"布");
switch(com-user) //用電腦產(chǎn)生的數(shù)和用戶輸入的數(shù)的差值來判斷勝負
{
case 0:
printf("平手\n");
break;
case 1:
case -2:
printf("電腦贏了\n");
break;
case -1:
case 2:
printf("你贏了\n");
}
printf("繼續(xù)游戲按Y鍵、其它鍵退出");
getchar();
c=getchar();
}while(c=='y' || c=='Y');
printf("已經(jīng)退出游戲");
}
擴展資料
C++編程: 石頭剪子布
#includecstdio
#includeiostream
using namespace std;
int main()
{
int n;
char a[10],b[10];
cinn;
int c[n+3];
for(int i=1;i=n;i++)
{
cinab;
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\n");break;
}
case 1:
{
printf("Player1\n");break;
}
case 2:
{
printf("Player2\n");break;
}
}
return 0;
}
網(wǎng)頁題目:石頭剪刀布c語言函數(shù) 石頭剪刀布c語言簡單代碼
URL網(wǎng)址:http://bm7419.com/article2/dohjjic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、網(wǎng)頁設(shè)計公司、定制開發(fā)、營銷型網(wǎng)站建設(shè)、網(wǎng)站改版、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)