c语言之循环语句练习

猜数字游戏

基本逻辑:

电脑产生一个随机数(1~100)
猜的数字比随机数大,需要反馈猜对了
猜的数字比随机数小,需要反馈猜小了

#include
#include
#include
void menu()
{
    printf("*********************\n");
    printf("*******1.play********\n");
    printf("*******0.exit********\n");
    printf("*********************\n");
}
//RAND_MAX--rand函数能返回随机数的最大值。
void game()
{
    int guess = 0;
    //1.生成随机数
    //任何一个数模上100就会变成0~99之间的数字,再+1就会变成0~100之间的数字
    int ret = rand() % 100 + 1;
    //printf("%d\n", ret);
    //2.猜数字
    while (1)
    {
        printf("请猜数字:>");
        scanf("%d", &guess);
        if (guess > ret)
        {
            printf("猜大了\n");
        }
        else if (guess < ret)
        {
            printf("猜小了\n");
        }
        else
        {
            printf("猜对了\n");
            break;
        }
    }
}
int main()
{
    int input = 0;
    srand((unsigned int)time(NULL));//time()函数的返回值类型是time_t;srand需要的是unsigned类型,所以强制类型转换(unsigned int)
    do
    {
        menu();
        printf("请选择:>");
        scanf("%d", &input);
        switch (input)
        {
        case 1:
            game();//"猜数字的逻辑"
            break;
        case 0:
            break;
        default:
            printf("选择错误,重新选择\n");
            break;
        }
    }
    while (input);
    return 0;
}

你可能感兴趣的:(c语言,算法,开发语言)