黑马程序员技术交流社区
标题:
剪子石头布游戏2.0版本
[打印本页]
作者:
蓝海悦
时间:
2015-6-20 15:10
标题:
剪子石头布游戏2.0版本
/*
游戏规则: 石头1 剪刀2 布3
1)
三局两胜,平局不算
玩家输两局,游戏结束
玩家赢两局,游戏结束
2)
如玩家输入不规范,游戏结束
*/
#include <stdio.h>
#include <stdlib.h>
int main(int argc, const char * argv[]) {
//定义变量
int computer = -1, shengJu =0, shuJu = 0; // 电脑出拳 胜局 输局
double player; // 玩家出拳
int off = -1; // 玩家输入校验
//游戏规则说明
printf("三局两胜,平局不算\n\n\n");
//统计输赢
for(; (shuJu < 2 && shengJu <2) ;){
//电脑,玩家 出拳
computer = arc4random_uniform(3);
switch (computer) {
case 0:
printf("电脑出: 石头\n");
break;
case 1:
printf("电脑出: 剪刀\n");
break;
default:
printf("电脑出: 布 \n");
break;
}
printf("请出拳: 石头0 剪刀1 布2\n");
scanf("%lf", &player);
//判断玩家智商是否适合这个游戏
off = (player != 0) && (player != 1) && (player != 2);
if(off){
printf("输入错误!!!\n\n\n你的智商不适合这个游戏\n");
break;
}
//比较,打印游戏结果
if(computer == player){
printf("哇靠!平局\n\n\n");
}else
if ((player==0 && computer==1)||
(player==1 && computer==2)||
(player==2 && computer==0)) {
printf("恭喜你,你赢了!\n");
shengJu++;
printf("您赢了%d局了\n\n\n", shengJu);
}else{
printf("很遗憾, 您输了!\n");
shuJu++;
printf("您输了%d局了\n\n\n", shuJu);
}
}
//游戏结束,统计胜局
printf("游戏结束~~~\n");
if( shengJu > 1){
printf("您共获得了%d次胜利,获得最终胜利!!!\n",shengJu);
}else{
printf("您共获得了%d次胜利,您输了!!!!!!!!\n",shengJu);
}
return 0;
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2