C语言 | 猜数字小游戏(简单易学)

先上代码:

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

#define MAX_NUMBER 100

int main()
{
    int number, guess;
    srand(time(NULL));
    number = rand() % MAX_NUMBER + 1;

    printf("我想了一个1到%d之间的数字,你猜一猜:", MAX_NUMBER);
    scanf("%d", &guess);

    while (guess != number) {
        if (guess < number) {
            printf("你猜的数字太小了,再猜一次:");
        } else {
            printf("你猜的数字太大了,再猜一次:");
        }
        scanf("%d", &guess);
    }

    printf("恭喜你,猜对了!\n");
    return 0;
}

在这个游戏中,程序会使用rand函数生成一个1到100之间的随机数,然后提示用户猜这个数字。用户输入猜测的数字,程序会告诉用户猜的数字是否太大或太小。当用户猜中了,程序会输出恭喜的信息。

在上面的代码中,我们使用了rand函数来生成随机数,这个函数的返回值是一个随机的整数。我们可以通过调用srand函数来设置随机数生成器的种子,这样就可以生成不同的随机数序列。

在本例中,我们使用了time函数来获取当前的系统时间,并将其作为随机数生成器的种子。这样,每次运行程序都会生成一个新的随机数序列。

我们还使用了scanf函数来读取用户输入的数字,并使用printf函数来输出提示信息。

最后,我们使用了一个while循环来不断地读取用户输入,直到用户猜中了。

这只是一个简单的猜数字游戏的示例代码,你可以根据自己的需要来修改和扩展它。例如,你可以增加游戏难度,让用户猜更大的数字范围,或者增加游戏的其

他功能,如记录用户的得分、限制用户的猜测次数等。

下面是一个扩展后的猜数字游戏的示例代码,它具有以下功能:

  • 允许用户自定义数字范围;
  • 记录用户的得分,并根据用户猜测的次数计算得分;
  • 限制用户的猜测次数,如果用户猜测次数超过了限制,则游戏结束。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
    int number, guess, min, max, tries;
    int score = 100;
    printf("输入数字范围的下限:");
    scanf("%d", &min);
    printf("输入数字范围的上限:");
    scanf("%d", &max);
    printf("输入最多允许的猜测次数:");
    scanf("%d", &tries);
    srand(time(NULL));
    number = rand() % (max - min + 1) + min;

    printf("我想了一个%d到%d之间的数字,你猜一猜:", min, max);
    scanf("%d", &guess);
    tries--;

    while (guess != number && tries > 0) {
        if (guess < number) {
            printf("你猜的数字太小了,再猜一次:");
        } else {
            printf("你猜的数字太大了,再猜一次:");
        }
        scanf("%d", &guess);
        tries--;
        score -= 10;
    }

    if (guess == number) {
        printf("恭喜你,猜对了!\n");
        printf("你的得分是:%d\n", score);
    } else {
        printf("很遗憾,你没有在规定的次数内猜中数字。\n");
    }

    return 0;
}

在这个游戏中,我们增加了几个新的功能:

  • 允许用户自定义数字范围,使用scanf函数读取用户输入的下限和上限;
  • 记录用户的得分,每猜测一次就减少10分;
  • 限制用户的猜测次数,使用tries变量

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值