C语言猜数字小游戏

本文将介绍如何使用C语言写一个猜数字的小游戏

具体代码如下:

#include
#include
#include

// 显示游戏菜单
void menu()
{
    printf("****   猜数字游戏!   ****\n");
    printf("****   按1开始游戏   ****\n");
    printf("****   按0退出游戏   ****\n");
}

// 游戏主体
void game()
{
    // 生成随机数
    int ret = rand() % 100 + 1;
    int num = 0;
    int cnt = 10; // 玩家的机会次数
    int sum = cnt; // 保存初始机会次数
    while (cnt > 0)
    {
        printf("你还有%d次机会\n", cnt);
        printf("请输入一个1-100之间的数:");
        // 输入验证
        if (scanf("%d", &num) != 1 || num < 1 || num > 100)
        {
            printf("输入错误,请重新输入一个1-100之间的数\n");
            while (getchar() != '\n');
            continue;
        }
        // 判断玩家输入与随机数的大小关系
        if (num > ret)
        {
            printf("数字太大了!\n");
        }
        else if (num < ret)
        {
            printf("数字太小了!\n");
        }
        else
        {
            printf("恭喜你猜对了!\n");
            printf("猜对用了%d次\n\n\n", sum - cnt + 1);
            return;
        }
        cnt--;
    }
    // 玩家机会用完,显示正确数字并结束游戏
    printf("你的机会用完了,游戏结束!\n");
    printf("正确的数字是%d\n\n\n", ret);
}

int main()
{
    srand((unsigned int)time(NULL)); // 用系统时间初始化随机数种子
    int input = 0;
    do
    {
        menu(); // 显示菜单
        printf("请选择你需要的操作:");
        if (scanf("%d", &input) != 1 || (input != 0 && input != 1))
        {
            printf("输入错误,请重新输入!\n");
            while (getchar() != '\n');
            continue;
        }
        switch (input)
        {
        case 1:
            game(); // 开始游戏
            break;
        case 0:
            printf("退出游戏!\n"); // 退出游戏
            break;
        }

    } while (input != 0);
    return 0;
}

 C语言实现这个小游戏可以帮助我们更好的理解和使用C语言中的基础知识,希望这篇文章可以帮带大家!

你可能感兴趣的:(C语言学习,c语言,开发语言)