猜字小游戏(初级版)

代码涉及以下内容:

1.do while循环    嵌套  switch判断;

2.if语句的判断;

3.以及menu函数的外包装。具体来说,void表示函数game不返回任何值,即它是一个无返回值的函数。这意味着函数game执行完毕后不会返回任何数据给调用它的地方。(即外包函数)

4.这是游戏的重点,就是输出随机数字;

#include<stdlib.h>    伪随机数生成函数(rand)
#include<time.h>     获取当前时间函数(time)

用rand函数输出随机数

eg:rand()%100+1; //%100的余数为 0~99 的数字;即范围为:1~100

5.final ,我是c语言初学者,如果有什么错误请多多指教!

#define _CRT_SECURE_NO_WARNINGS 1 //(宏定义)
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
    printf("****************************\n");
    printf("****       1.input     ****\n");
    printf("****       0.exit       ****\n");
    printf("****************************\n");
}
void game()
{
    int ret = rand() % 100 + 1;
    int guess = 0;
    int q = 5;

    while (q)
    {
        printf("你还有%d次机会答题!\n", q);

        printf("请输入你要猜的数字:");
            scanf("%d", &guess);
        if (guess > ret)
        {
            printf("猜大了!\n");
        }
        else if (guess < ret)
        {
            printf("猜小了\n");
        }
        else
        {
            printf("恭喜你,猜对了!\n");
            break;
        }
        q--;
    }
    if (q == 0)
    {
        printf("你挑战失败!goodbye!\n正确值是%d\n", ret);
    }

    
}


int main()
{
    srand((unsigned int)time(NULL));//强制转换;
    int input = 0;
    do
    {
        menu();
        printf("请选择:");
        scanf("%d", &input);
        switch (input)
        {
        case 1:
                game();
                break;
        case 0:
                printf("退出游戏,白白!\n");
                break;
        default:
                printf("请重新输入数字,正确将进入游戏!\n");
                break;
        }
        
    } while (input);

return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值