黑马程序员技术交流社区

标题: 剪刀石头布游戏的实现 [打印本页]

作者: 尾尾    时间: 2015-9-29 22:02
标题: 剪刀石头布游戏的实现
  1. //实现剪刀石头布游戏

  2. /*
  3. 游戏步骤:
  4.     1提醒玩家出拳
  5.     2将玩家出拳用变量a存储
  6.     3电脑随机出拳用变量b存储
  7.     4对a和b进行比较,判断出结果
  8.     5将结果展示给玩家
  9. 游戏规则:
  10.     石头:0 布:1 剪刀:2
  11.     0与1,1胜利
  12.     0与2,0胜利
  13.     1与2,2胜利
  14.     其他情况 平局
  15. */

  16. #include<stdio.h>
  17. #include<stdlib.h>

  18. int main(){
  19. //    提醒玩家出拳
  20.     printf("请出拳,0代表石头,1代表布,2代表剪刀\n");
  21. //    用变量a存储玩家出的拳
  22.     int a=-1;
  23.     scanf("%d",&a);
  24.     if(a==0)printf("你出了石头");
  25.     if(a==1)printf("你出了布");
  26.     if(a==2)printf("你出了剪刀");
  27. //    电脑随机出拳,用b存储
  28. //    int b=-1;
  29. //    b=arc4random_uniform(3);
  30. //    if(b==0)printf("电脑出了石头\n");
  31. //    if(b==1)printf("电脑出了布\n");
  32. //    if(b==2)printf("电脑出了剪刀\n");
  33. //    判断结果
  34.    
  35. //    //判断结果方法1
  36. //   if(a!=1&&a!=2&&a!=0){
  37. //    printf("不好意思,你输错了\n");}else{
  38. //    int b=-1;
  39. //    b=arc4random_uniform(3);
  40. //    if(b==0)printf("电脑出了石头\n");
  41. //    if(b==1)printf("电脑出了布\n");
  42. //    if(b==2)printf("电脑出了剪刀\n");
  43. //    if(a==b){
  44. //        printf("哟呵,是平局!\n");
  45. //    }else{
  46. //        if(a+b==1){
  47. //        if(a==0){
  48. //            printf("很遗憾,你输了...\n");
  49. //        }else{
  50. //            printf("恭喜你,你赢了!\n");
  51. //        }
  52. //        
  53. //    }
  54. //    if(a+b==2){
  55. //        if(a==2){
  56. //            printf("很遗憾,你输了...\n");
  57. //        }else{
  58. //            printf("****恭喜你,你赢了!****\n");
  59. //        }
  60. //        
  61. //    }
  62. //    if(a+b==3){
  63. //        if(a==1){
  64. //            printf("很遗憾,你输了...\n");
  65. //        }else{
  66. //            printf("****恭喜你,你赢了!****\n");
  67. //        }
  68. //        
  69. //    }
  70. //    }
  71. //    }
  72.    
  73.     //判断结果方法2
  74.     if(a!=1&&a!=2&&a!=0){
  75.         printf("不好意思,你输错了\n");
  76.     }else{
  77.         int b=-1;
  78.         b=arc4random_uniform(3);
  79.         if(b==0)printf("电脑出了石头\n");
  80.         if(b==1)printf("电脑出了布\n");
  81.         if(b==2)printf("电脑出了剪刀\n");
  82.     if(a==b){
  83.         printf("哟呵,是平局!\n");
  84.     }else{
  85.         if ((a==0&&b==2)||(a==2&&b==0)) {
  86.             if(!a){
  87.                 printf("****恭喜你,你赢了!****\n");
  88.             }else{
  89.                 printf("很遗憾,你输了...\n");
  90.             }
  91.         }else{
  92.             if (a-b>0) {
  93.                 printf("****恭喜你,你赢了!****\n");
  94.             }else{
  95.                 printf("很遗憾,你输了...\n");
  96.             }
  97.         }
  98.     }
  99.     }

  100.    
  101.    
  102.     return 0;
  103.    
  104. }
复制代码

作者: 任振铭    时间: 2015-9-30 19:42
这么高级的算法
作者: 洪吉童    时间: 2015-10-1 09:04
很整齐,很清楚
作者: 尾尾    时间: 2015-10-1 23:04
嘻嘻 这是官网视频上的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2