猜拳II.bat
cmd吧
全部回复
仅看楼主
level 12
命幽 楼主
@echo off
setlocal enabledelayedexpansion
title 游戏--猜拳 by狱渊
mode con: cols=39 lines=14
:界面设置
set a=┏
set b=━
set c=┳
set d=┓
set e=┃
set f=┣
set g=╋
set h=┫
set i=┗
set j=┻
set k=┛
:属性设置
set 胜=0
set 败=0
set 平=0
set 率=0
:游戏界面
cls
echo.
echo.
echo. %a%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%d%
echo. %e%猜拳游戏 by狱渊 剪刀 石头 布%e%
echo. %i%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%b%%k%
:游戏开始
set /a 游戏次数+=1
echo 第!游戏次数!回合 退出:Exit
set /p 人类=输入你的进攻方式:
:流程跳转
if "%人类%"=="剪刀" goto 条件判断
if "%人类%"=="石头" goto 条件判断
if "%人类%"=="布" goto 条件判断
if /i "%人类%"=="Exit" goto 游戏结算
if /i "%人类%"=="%人类%" (echo 输入错误,请按任意键返回重新输入.&pause>nul&set /a 游戏次数-=1&goto 游戏界面)
:条件判断
set /a 系统=%random%%%3
if %系统%==0 (set 电脑=石头) else if %系统%==1 (set 电脑=剪刀) else if %系统%==2 (set 电脑=布)
if "%人类%"=="剪刀" if "%电脑%"=="剪刀" set 辨=平&set /a 平=%平%+1
if "%人类%"=="石头" if "%电脑%"=="石头" set 辨=平&set /a 平=%平%+1
if "%人类%"=="布" if "%电脑%"=="布" set 辨=平&set /a 平=%平%+1
if "%人类%"=="剪刀" if "%电脑%"=="石头" set 辨=败&set /a 败=%败%+1
if "%人类%"=="石头" if "%电脑%"=="布" set 辨=败&set /a 败=%败%+1
if "%人类%"=="布" if "%电脑%"=="剪刀" set 辨=败&set /a 败=%败%+1
if "%人类%"=="石头" if "%电脑%"=="剪刀" set 辨=胜&set /a 胜=%胜%+1
if "%人类%"=="布" if "%电脑%"=="石头" set 辨=胜&set /a 胜=%胜%+1
if "%人类%"=="剪刀" if "%电脑%"=="布" set 辨=胜&set /a 胜=%胜%+1
:游戏结果
cls
echo.
echo.
echo 你出的是:%人类%
echo 电脑出的是:%电脑%
echo.
echo. %人类%对战%电脑%--%辨%
echo.
echo.
echo 任意键进入下一回合.
pause>nul
goto 游戏界面
:游戏结算
cls
echo.
echo.
echo.
echo.
echo.
echo.
set /a 游戏次数-=1
::退出时计算的局数不算在猜拳比赛中.
echo 玩了%游戏次数%次,胜了%胜%次,败了%败%次,平了%平%次.
echo.
set /a 率=%胜%*100/%游戏次数%
echo 玩家的胜率为:%率%%%
pause>nul
2013年07月03日 09点07分 1
level 12
命幽 楼主
添加了一个胜率
修复了 出错还进入下一回合的bug
多谢qinhao1002的提醒
@576432734
这贴能够给精吗。。。 我的第一个游戏。。。
这把的第%一%个游戏。。。
set 申精=@576432734此贴申精<nul
......
2013年07月03日 09点07分 2
level 12
命幽 楼主
我刚复制了一下 可以用(win7)
2013年07月03日 09点07分 3
level 7
。。。。。
lz
真有空
2013年07月03日 10点07分 4
额 。。。 汗 兄弟一如空门万事俱无啊
2013年07月03日 10点07分
入。。。
2013年07月03日 10点07分
彼此彼此 汗汗。。。
2013年07月03日 11点07分
level 9
碉堡了[哈哈]
2013年07月03日 10点07分 5
汗。。。
2013年07月03日 10点07分
话说你终于露面了啊。。。 汗
2013年07月03日 11点07分
回复 命幽 :刚刚放学~~~
2013年07月03日 13点07分
回复 三岁就能上树 :汗。。。
2013年07月03日 13点07分
level 7
#include <iostream>
#include <string>
using namespace std;
void log() //游戏界面
{
cout<<"---------------------------------"<<endl<<"------石头剪刀布------"<<endl
cout<<"---------------------------------"<<endl;
}
int get_cpu(char buff[])
{
if (strcmp(buff,"石头")==0) return 0;
if (strcmp(buff,"剪刀")==0) return 1;
if (strcmp(buff,"布")==0) return 2;
}
void main()
{
int wins=0,loses=0,peaces=0; // 胜负局数
int cpu_grade=0
int game_time=1;
bool answer=false;
while(1){
log();
cout<<"这是你的"<<game_time<<"次游戏"<<endl;
cout<<"请输入你的进攻方式吧"<<endl;
int cpu=rand()%3;
char human_attack[2]={0};
char computer_attack[2]={0};
switch(cpu)
{
case 0:computer_attack[2]="石头";break;
case 1:computer_attack[2]="剪刀";break;
case 2:computer_attack[2]="布";break;
default":computer_attack[2]="出错";break;
}
gets(human_attack);
cpu_grade=get_cpu(computer_attack[2]);
if (strcmp(human_attack)==0)
{
cout<<"平局"<<endl;
peaces++;
game_time++;s
continue;
}
else
{
if (strcmp(a,"石头")==0) {if (cpu==2){cout<<"你输了"<<endl;loses++;game_time++;}else{cout<<"你赢了"<<Endl;wins++;game_time++;
if (strcmp(a,"剪刀")==0) {if (cpu==0){cout<<"你输了"<<endl;loses++;game_time++;}else{cout<<"你赢了"<<Endl;wins++;game_time++;
if (strcmp(a,"布")==0) {if (cpu==1){cout<<"你输了"<<endl;loses++;game_time++;}else{cout<<"你赢了"<<Endl;wins++;game_time++;
}
system("cls");
{
}
我去,写不下去了,一些细节明天再改改吧==我也够无聊的,此程序空写的,没调试过。
2013年07月03日 10点07分 6
额 汗、、、 谁的> 空是谁啊?...
2013年07月03日 11点07分
回复 命幽 :姓苍的那个
2015年04月17日 09点04分
回复
������
:???
2015年04月17日 11点04分
@- 仓井空[哈哈]
2015年04月24日 12点04分
level 7
我去,括号反了。。
2013年07月03日 10点07分 7
C++>?han
2013年07月03日 11点07分
回复@命幽 :。。
2013年07月03日 11点07分
回复 3qdazhanee :咋了?
2013年07月03日 11点07分
level 7
早上上课去,下午就能正式发了哇卡卡
2013年07月03日 23点07分 8
鹅鹅鹅饿饿。。。。汗 无语啊 你做的是什么啊 (什么做的 ) 我对编程一窍不通啊。。。
2013年07月03日 23点07分
回复 命幽 :c++,你批处理语言不是编程是什么、、、?
2013年07月04日 04点07分
额 我说的是自己还不甚懂啊。。。。
2013年07月04日 09点07分
1