C语言实现与电脑玩剪刀石头布游戏

目录
  • 1.导入头文件
  • 2.游戏菜单
  • 3.开始游戏并对电脑输入数据
  • 4.判断输赢并输出结果
  • 5.全代码

C语言实现与电脑进行剪刀石头布

游戏解析:

1.导入头文件

2.游戏菜单

3.开始游戏并对电脑输入数据

4.为电脑随机生成一个数据

5.判断输赢并输出结果

1.导入头文件

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

2.游戏菜单

void menu()//游戏菜单
{
    printf("  1.play   \n");
    printf("  0.exit   \n");
}
int main()
{
    int a;
    srand((unsigned int)time(NULL));//随机种子,让电脑可以随机生成一个值

    do
    {
        menu();
        scanf("%d", &a);
        switch (a)
        {
        case 1:
            game();
        case 0:
            break;

        default:
            printf("输入错误,请重新输入。\n");
        }
    } while (a);

    return 0;
}

利用do while循环语句,在游戏结束时可以再次选择是否继续。switch语句选择游戏的开始与否

3.开始游戏并对电脑输入数据

游戏次数次数过的时候,屏幕上内容过多,所以在每次游戏开始的时候做一个清屏处理

void game()//游戏模块
{
    system("cls");//做了一个清屏处理,每次开始新游戏时,清除上一次游戏记录。
    int b, c;
    printf("游戏:剪刀石头布\n");
    printf("请选择你要出的手势>:\n");
    printf("1.石头 2.剪刀 3.布\n");
    scanf("%d", &c);
    b = rand() % 3 + 1;//产生1、2、3之间的一个随机值
    //printf("%d\n", b);//调试过程中以确保b的值对应且随机

4.判断输赢并输出结果

选用if分支语句对根据不同的情况来输出结果

if (c == b)//开始判断输赢
        printf("电脑和你出了一样的手势,本局平局。\n");
    else if ((b - c + 3) % 3 == 1)
    {
        if (b == 1)
            printf("你赢了,电脑出了石头。\n");
        else if (b == 2)
            printf("你赢了,电脑处了剪刀。\n");
        else
            printf("你赢了,电脑出了布。\n");

    }
    else
    {
        if (b == 1)
            printf("你输了,电脑出了石头。\n");
        else if (b == 2)
            printf("你输了,电脑处了剪刀。\n");
        else
            printf("你输了,电脑出了布。\n");
    }

5.全代码

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

void menu()//游戏菜单
{
    printf("  1.play   \n");
    printf("  0.exit   \n");
}

void game()//游戏模块
{
    system("cls");//做了一个清屏处理,每次开始新游戏时,清除上一次游戏记录。
    int b, c;
    printf("游戏:剪刀石头布\n");
    printf("请选择你要出的手势>:\n");
    printf("1.石头 2.剪刀 3.布\n");
    scanf("%d", &c);
    b = rand() % 3 + 1;//产生1、2、3之间的一个随机值
    //printf("%d\n", b);//调试过程中以确保b的值对应且随机
    if (c == b)//开始判断输赢
        printf("电脑和你出了一样的手势,本局平局。\n");
    else if ((b - c + 3) % 3 == 1)
    {
        if (b == 1)
            printf("你赢了,电脑出了石头。\n");
        else if (b == 2)
            printf("你赢了,电脑处了剪刀。\n");
        else
            printf("你赢了,电脑出了布。\n");

    }
    else
    {
        if (b == 1)
            printf("你输了,电脑出了石头。\n");
        else if (b == 2)
            printf("你输了,电脑处了剪刀。\n");
        else
            printf("你输了,电脑出了布。\n");
    }

}

int main()
{
    int a;
    srand((unsigned int)time(NULL));//随机种子,让电脑可以随机生成一个值

    do
    {
        menu();
        scanf("%d", &a);
        switch (a)
        {
        case 1:
            game();
        case 0:
            break;

        default:
            printf("输入错误,请重新输入。\n");
        }
    } while (a);

    return 0;
}

到这简单的一个石头剪刀布,就完成了。欢迎各位大佬来点评点评!这对还处于小白的我,帮助是非常大的。

到此这篇关于C语言实现与电脑玩剪刀石头布游戏的文章就介绍到这了,更多相关C语言剪刀石头布游戏内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 利用C语言编写“剪刀石头布”小游戏

    前言 大家好~ 我是一名C语言初学者,学了C语言基础后,我制作了一个小游戏:剪刀石头布. 希望大家能对我的思路和代码提出小Tips(eg.更简便的方法与程序) 我也会虚心接受大家的建议~ 一.游戏原理 "剪刀石头布"这个游戏,想必大家都很熟悉了. 两个人在玩游戏时,事先都不知道对方将要出什么,这中间存在着一种随机性. 而这种随机性相当于C语言里stdlib.h库中rand()函数,rand()函数用来产生随机数,因为rand是根据提供给srand()的种子值返回一个随机数,所以要使每次

  • C语言实现最简单的剪刀石头布小游戏示例

    本文实例讲述了C语言实现最简单的剪刀石头布小游戏.分享给大家供大家参考,具体如下: #include<stdio.h> #include<stdlib.h> #include<time.h> /*************\ * 剪刀 石头 布 * * 最简单小游戏 * \*************/ int main(void){ char gesture[3][10] = {"scissor","stone","clo

  • C语言实现与电脑玩剪刀石头布游戏

    目录 1.导入头文件 2.游戏菜单 3.开始游戏并对电脑输入数据 4.判断输赢并输出结果 5.全代码 C语言实现与电脑进行剪刀石头布 游戏解析: 1.导入头文件 2.游戏菜单 3.开始游戏并对电脑输入数据 4.为电脑随机生成一个数据 5.判断输赢并输出结果 1.导入头文件 #include<stdio.h> #include<stdlib.h> #include<time.h> 2.游戏菜单 void menu()//游戏菜单 { printf(" 1.pla

  • Java实现和电脑玩剪刀石头布游戏

    剪刀石头布游戏大家都玩过吧,今天分享Java实现和电脑玩剪刀石头布游戏的具体代码,供大家参考,具体内容如下 游戏总类 import java.util.Scanner; public class Game { Scanner input = new _Scanner(System.in); String judge; int num1;//人返回的数字 int num2;//机器返回的数字 Computer computer = new Computer(); Person person = n

  • C#语言使用Unity实现剪刀石头布游戏

    本文实例为大家分享了C#语言使用Unity实现剪刀石头布游戏的具体代码,供大家参考,具体内容如下 游戏:剪刀石头布 实现功能: 1.电脑随机出牌(剪刀石头布) 2.玩家选择出牌(剪刀石头布) 3.玩家没有出牌时,电脑变幻牌面: 玩家出牌后,电脑出牌,并停止变幻牌面3秒,期间玩家无法选择出牌 4.玩家和电脑出牌后,电脑自动计分. using UnityEngine; using System.Collections; public class hw0310a : MonoBehaviour { /

  • C#使用Unity实现剪刀石头布游戏

    本文实例为大家分享了C#语言使用Unity实现剪刀石头布游戏的具体代码,供大家参考,具体内容如下 游戏:剪刀石头布 实现功能: 1.电脑随机出牌(剪刀石头布) 2.玩家选择出牌(剪刀石头布) 3.玩家没有出牌时,电脑变幻牌面: 玩家出牌后,电脑出牌,并停止变幻牌面3秒,期间玩家无法选择出牌 4.玩家和电脑出牌后,电脑自动计分. using UnityEngine; using System.Collections; public class hw0310a : MonoBehaviour { /

  • C语言代码实现简单三子棋游戏

    三子棋是我们小时候经常玩的游戏,今天就分享一下如何用c语言简单实现三子棋吧 编译软件VS2019 c语言实现三子棋运用到了二维数组的知识,在编写三子棋程序时用到了多文件编译(不是必须的,但是使用多文件编译会增加代码的可读性),首先我们先建立一个头文件和两个源文件·: test.c//主程序 函数实现 game.c//主要用于自定义函数的定义 game.h//声明自定义函数 主要代码实现 test.c 调用各个功能的函数 #define _CRT_SECURE_NO_WARNINGS 1 #inc

  • C语言实现的一个三子棋游戏详解流程

    目录 前言 一.三子棋完成程序运行结果 二.三子棋代码实现 1.创建源文件与头文件 2.整体页面的制作 3.制作并打印棋盘 1.在test.c文件中,定义函数game(); 2.在game.h 头文件中 3.在game.c源文件中 4.人机互动下棋 1.在test.c源文件中 2.在game.h头文件中 3.在game.c源文件中 4.此时打印效果 5.判断输赢 1.在test.c源文件中 2.在game.h头文件中 3.在game.c源文件中 4.最终实现结果 最后 前言 三子棋是我们先前所学

  • C语言详解实现猜数字游戏步骤

    目录 前言 一.猜数字游戏是什么 二.使用步骤 总结 前言 本文详细介绍了猜数字游戏的具体实现逻辑 一.猜数字游戏是什么 1.电脑自动生成一个1-100以内的数字 2.我们输入一个我们猜的数字 3.如果我们猜的数字比电脑随机生成的数字大,那么输出(猜大了) 4.如果我们猜的数字比电脑随机生成的数字小,那么输出(猜小了) 5.如此循环往复,猜到正确的数字之后游戏结束 二.使用步骤 1.首先应该打印菜单 代码如下 void menu() { printf("*********************

  • php实现的网页版剪刀石头布游戏示例

    本文实例讲述了php实现的网页版剪刀石头布游戏.分享给大家供大家参考,具体如下: <?php /* * Created on 2016-11-25 * */ if (isset($_POST['sub'])) { $what = $_POST['what']; //需要输入的数组 $my_array = array("剪刀","石头","布"); //获胜规则 $guize = array(array("剪刀",&quo

  • Java实现的剪刀石头布游戏示例

    本文实例讲述了Java实现的剪刀石头布游戏.分享给大家供大家参考,具体如下: ChoiceAnswer.java public class ChoiceAnswer { String texts[] = { "石头", "剪刀", "布" }; int value; // [1]石头\t[2]剪刀\t[3]布 String getText() { return texts[value - 1]; } ChoiceAnswer(int value)

随机推荐