当前位置 : 主页 > 编程语言 > c语言 >

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

来源:互联网 收集:自由互联 发布时间:2023-02-01
目录 1.导入头文件 2.游戏菜单 3.开始游戏并对电脑输入数据 4.判断输赢并输出结果 5.全代码 C语言实现与电脑进行剪刀石头布 游戏解析: 1.导入头文件 2.游戏菜单 3.开始游戏并对电脑输
目录
  • 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语言剪刀石头布游戏内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

上一篇:QT实现FTP上传文件
下一篇:没有了
网友评论