【C语言】如何制作猜数小游戏(0-99)(复杂版)(意义不大)

#define _CRT_SECURE_NO_WARNINGS 1

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

int sum;

void menu()
{
    printf("\n\n    猜字游戏");
    Sleep(500);
    system("cls");
    printf("*******************\n");
    printf("*******************\n");
    printf("****  1.玩    *****\n");
    printf("****  0.不玩  *****\n");
    printf("*******************\n");
    printf("*******************\n");
}

void game()
{
    int input;
    do
    {
        Sleep(100);
        system("cls");
        printf("猜数字\n");
        int chance = 6;
        int a = rand() % 100;
        printf("你一共有%d次机会\n", chance);
        while (1)
        {
            chance--;
            printf("请输入一个数字\n");
            scanf("%d", &input);
            if (chance == 0)
            {
                printf("次数用完了,请重新开始\n");
                printf("答案为%d\n", a);
                Sleep(2000);
                break;
            }
            if (input > a)
            {
                printf("大了,还有%d次机会,请继续\n", chance);
            }
            if (input < a)
            {
                printf("小了,还有%d次机会,请继续\n", chance);
            }
            if (input == a)
            {
                printf("恭喜你,答对了!\n");
                break;
            }
        }
        printf("是否继续玩,按1继续,按0结束\n");
        scanf("%d", &sum);
        while (sum != 0 && sum != 1)
        {
            printf("选择错误,请重新选择\n");
            printf("是否继续玩,按1继续,按0结束\n");
            scanf("%d", &sum);
        }
    } while (sum == 1);
}

int main()
{
    srand((unsigned)time(NULL));
    int Num;
    do
    {
        menu();
        printf("请选择:");
        scanf("%d", &Num);
        switch (Num)
        {
        case 1:
            game();    
            Num = sum;
        case 0:
            printf("退出游戏\n");
            break;
        default:
            Sleep(1000);
            system("cls");
            printf("选择错误,请重新选择\n");
            Sleep(1000);
            system("cls");

            break;
        }
    } while (Num);

    return 0;
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值