循环语句结构的应用(二)猜数字游戏

         在学习了循环语句结构之后,我们来做一个简单的猜数字游戏。
      在很受欢迎的综艺快乐大本营中,有一个很好玩的游戏叫做深水炸弹,也就是
      今天我们要实现的猜数字游戏。原理就是由电脑随机产生一个数字,然后由你
      诉你猜大了,然后你就可以找到一个区间继续猜,以此循环,直到猜正确。
        接下来就对理论进行实践。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
void menu()
{
    printf("*******************\n");
    printf("**1.play   0.exit**\n");
    printf("*******************\n");
}
void play_game()
{
    int rand_num = rand() % 100;
    int tmp = 0;
    while (1)
    {
        printf("请输入你猜得的数字:");
        scanf("%d", &tmp);
        if (tmp == rand_num)
        {
            printf("恭喜你,猜对了!\n");
            break;
        }
        else if (tmp > rand_num)
        {
            printf("猜大了!\n");
        }
        else
        {
            printf("猜小了!\n");
        }   
    }
}
int main()
{
    int input = 0; 
    srand((unsigned)time(NULL));
    do  //rand()函数调用之前必须使用srand()函数设置
    {    //设置随机数产生器。
        menu();

        printf("请选择:");
        scanf("%d", &input);
        switch (input)
        {
        case 1:
            play_game();
            break;
        case 0:
            break;
        default:
            printf("选择错误。");
            break;
        }
    } while (input);

}
         在这个游戏的实现过程中,除了对循环语句结构的应用之外,还运用了一个
       函数rand(),用来产生一个随机数,在使用rand()函数之前,必须要调用个
       srand()函数来形成一个随机数产生器,但是在使用的过程中,srand()
       函数只需要调用一次就好,调用多次可能会出现期望之外的结果。

猜你喜欢

转载自blog.csdn.net/weixin_38175489/article/details/79574222