// ===== CodeLab: C 语言小游戏①:猜数字 =====
// 来源: https://aoerliang.dpdns.org/articles/game-c-guess
// 以下代码片段按文章出现顺序拼接, 共 6 段

// ----- 片段 1 (c) -----
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(void) {
    srand((unsigned)time(NULL));   /* 用当前时间做随机种子 */
    return 0;
}

// ----- 片段 2 (c) -----
int secret = rand() % 100 + 1;   /* 1~100 的秘密数字 */
printf("调试: 秘密数字是 %d\n", secret);

// ----- 片段 3 (c) -----
int guess;
printf("请输入你的猜测: ");
scanf("%d", &guess);

if (guess > secret) {
    printf("太大了! 再小一点。\n");
} else if (guess < secret) {
    printf("太小了! 再大一点。\n");
}

// ----- 片段 4 (c) -----
int count = 0;
do {
    printf("请输入你的猜测: ");
    scanf("%d", &guess);
    count++;
    /* ...第 3 步的判断代码... */
} while (guess != secret);

printf("恭喜! 你用了 %d 次猜中, 答案是 %d。\n", count, secret);

// ----- 片段 5 (c) -----
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(void) {
    int secret, guess, count = 0;

    srand((unsigned)time(NULL));
    secret = rand() % 100 + 1;

    printf("我已经想好了一个 1~100 之间的数字, 快来猜!\n");

    do {
        printf("请输入你的猜测: ");
        scanf("%d", &guess);
        count++;

        if (guess > secret) {
            printf("太大了! 再小一点。\n");
        } else if (guess < secret) {
            printf("太小了! 再大一点。\n");
        }
    } while (guess != secret);

    printf("恭喜! 你用了 %d 次就猜中了, 答案是 %d。\n", count, secret);
    return 0;
}

// ----- 片段 6 (bash) -----
gcc -o guess guess.c
./guess
