C语言实现猜数字游戏(通俗易懂)


前言

首先规划一下我们的猜数字游戏:

  1. 数字给定(1-100)的随机值,生成随机值的方法之前有讲到过看这篇:C语言生成随机数的方法
  2. 猜小猜大了给出提示
  3. 想玩可以一直玩(循环选择)

一、代码思路:

1.游戏菜单:

首先我们写个游戏菜单:

  • 选择菜单操作放在主函数中
  • 菜单简洁明了,想玩可以一直玩
void menu()
{
    
    
	printf("**************************\n");
	printf("********猜数字游戏********\n");
	printf("********  1.play  ********\n");
	printf("********  2.exit  ********\n");
	printf("**************************\n");
}

2.主函数:

通过do while嵌套switch对游戏菜单进行控制:

  • 玩游戏输入1:进入case1开始游戏
  • 退出游戏输入2:进入case2退出游戏
  • 输入错误:进入default,进入下一次循环重新输入
int main()
{
    
    
	srand((unsigned int)time(NULL));
	int input = 0;//玩家输入的选项
	do
	{
    
    
		menu();//打印菜单
		printf("请选择:>");
		scanf("%d", &input);
		switch (input)
		{
    
    
		case 1:
			printf("开始游戏\n");
			game();//游戏函数
			break;
		case 2:
			printf("游戏结束\n");
			break;
		default:
			printf("输入错误,请重新输入\n");
			break;
		}
	} while (input != 2);
	return 0;
}

3.游戏函数:

首先通过rand函数生成一个随机数
不会生成随机数看之前这篇:C语言生成随机数的方法
玩家输入猜的数字:

  • 猜错了一直猜
  • 猜对猜错给出提示
  • 猜对了退出循环
void game()
{
    
    
	int guess = 0;
	int ret = rand() % 100 + 1;//生成一个随机数(1-100)
	while (1)
	{
    
    
		printf("请输入你猜的数字:>");
		scanf("%d", &guess);
		if (guess > ret)
		{
    
    
			printf("猜大了\n");
		}
		else if (guess < ret)
		{
    
    
			printf("猜小了\n");
		}
		else
		{
    
    
			printf("恭喜你,猜对了\n");
			break;
		}
	}
}

二、游戏总体代码:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
    
    
	printf("**************************\n");
	printf("********猜数字游戏********\n");
	printf("********  1.play  ********\n");
	printf("********  2.exit  ********\n");
	printf("**************************\n");
}
void game()
{
    
    
	int guess = 0;
	int ret = rand() % 100 + 1;//生成一个随机数(1-100)
	while (1)
	{
    
    
		printf("请输入你猜的数字:>");
		scanf("%d", &guess);
		if (guess > ret)
		{
    
    
			printf("猜大了\n");
		}
		else if (guess < ret)
		{
    
    
			printf("猜小了\n");
		}
		else
		{
    
    
			printf("恭喜你,猜对了\n");
			break;
		}
	}
}
int main()
{
    
    
	srand((unsigned int)time(NULL));
	int input = 0;//玩家输入的选项
	do
	{
    
    
		menu();//打印菜单
		printf("请选择:>");
		scanf("%d", &input);
		switch (input)
		{
    
    
		case 1:
			printf("开始游戏\n");
			game();
			break;
		case 2:
			printf("游戏结束\n");
			break;
		default:
			printf("输入错误,请重新输入\n");
			break;
		}
	} while (input != 2);
	return 0;
}

结尾:

以上就是今天讲的C语言猜数字游戏实现的基本思路,主要运用到了随机数的生成方法,希望对刚阅读本篇博客的你有所帮助,喜欢就点赞关注一波吧!!!

猜你喜欢

转载自blog.csdn.net/weixin_61661271/article/details/124592393