C语言|猜字母小游戏(简单易学)-创新互联

下面是一个使用C语言编写的猜字母小游戏的示例代码:

创新互联建站自2013年起,先为繁峙等服务建站,繁峙等地企业,进行企业商务咨询服务。为繁峙企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
#include#include#includeint main()
{
    char letter, guess;
    srand(time(NULL));
    letter = 'a' + rand() % 26;

    printf("我想了一个小写字母,你猜一猜:");
    guess = getchar();

    while (guess != letter) {
        printf("你猜的字母不对,再猜一次:");
        guess = getchar();
    }

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

在这个游戏中,程序会使用rand函数生成一个随机的小写字母,然后提示用户猜这个字母。用户输入猜测的字母,程序会告诉用户猜的字母是否正确。

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

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

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

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

这只是一个简单的猜字母游戏的示例代码,你可以根据自己的需要来修改和扩展它。

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

  • 允许用户自定义字母范围,可以猜大写或小写字母;
  • 记录用户的得分,并根据用户猜测的次数计算得分;
  • 限制用户的猜测次数,如果用户猜测次数超过了限制,则游戏结束。
#include#include#includeint main()
{
    char letter, guess;
    char min, max;
    int tries;
    int score = 100;
    printf("输入字母范围的下限(大写或小写):");
    min = getchar();
    printf("输入字母范围的上限(大写或小写):");
    max = getchar();
    printf("输入最多允许的猜测次数:");
    scanf("%d", &tries);
    srand(time(NULL));
    letter = min + rand() % (max - min + 1);

    printf("我想了一个%c到%c之间的字母,你猜一猜:", min, max);
    guess = getchar();
    tries--;

    while (guess != letter && tries >0) {
        printf("你猜的字母不对,再猜一次:");
        guess = getchar();
        tries--;
        score -= 10;
    }

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

    return 0;
}

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

  • 允许用户自定义字母范围,可以猜大写或小写字母;
  • 记录用户的得分,并根据用户猜测的次数计算得分;
  • 限制用户的猜测次数,如果用户猜测次数超过了限制,则游戏结束;
  • 在游戏结束后,提示用户是否希望再玩一次;
  • 增加游戏的难度,让用户猜多个字母;
  • 增加游戏的奖励机制,让用户得到更多的分数。
#include#include#include#include#define MAX_WORD_LEN 20

int main()
{
    char word[MAX_WORD_LEN];
    char guess[MAX_WORD_LEN];
    char min, max;
    int word_len;
    int tries;
    int score = 100;
    int i, correct;
    char play_again = 'y';

    while (play_again == 'y') {
        printf("输入字母范围的下限(大写或小写):");
        min = getchar();
        printf("输入字母范围的上限(大写或小写):");
        max = getchar();
        printf("输入要猜的字母的个数(1-%d):", MAX_WORD_LEN - 1);
        scanf("%d", &word_len);
        printf("输入最多允许的猜测次数:");
        scanf("%d", &tries);
        srand(time(NULL));
        for (i = 0; i< word_len; i++) {
            word[i] = min + rand() % (max - min + 1);
        }
        word[i] = '\0';

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

        while (strcmp(guess, word) != 0 && tries >0) {
            printf("你猜的字母不对,再猜一次:");
            scanf("%s", guess);
            tries--;
            score -= 10;
        }

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

        printf("是否希望再玩一次(y/n):");
        play_again = getchar();
        while (getchar() != '\n');
        score = 100;
    }

    return 0;
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站栏目:C语言|猜字母小游戏(简单易学)-创新互联
文章转载:http://ybzwz.com/article/cdjcpd.html