ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

[C语言]猜数字游戏

2022-03-19 19:31:56  阅读:146  来源: 互联网

标签:数字 int printf C语言 break choose time 游戏


要求:

  1. 自动产生一个1-100之间的随机数
  2. 猜数字
  3. 猜对了,就恭喜你且游戏结束
  4. 猜错了,会告知是猜大了还是小了,然后继续猜,直至正确
  5. 游戏可以一直玩,除非退出游戏
#define  _CRT_SECURE_NO_WARNINGS 
#include <stdio.h>
#include <time.h>
#include <windows.h>
//显示菜单
void menu()
{
	printf("******************************************\n");
	printf("**********   进入游戏请输入:1    *********\n");
	printf("**********   退出游戏请输入:0    *********\n");
	printf("******************************************\n");
}
//游戏函数
void game()
{
	//生成随机数
	int x = rand() % 100 + 1;
    //想要生成随机数范围多少就改取模的数字;例如想要1~1000,就把100改成1000即可
    //原理:取模后的数不会超过取模的那个数,例如 %100 的结果是 0~99
	int guess;
	while (1)
	{
		printf("请输入你猜的数字:>");
		scanf("%d", &guess);
		if (guess < x)
			printf("猜得太小了!\n");
		else if (guess > x)
			printf("猜得太大了!\n");
		else
		{
			printf("猜对了!!\n");
			Sleep(3000);
			break;
		}
	}
	system("cls"); //清空屏幕
}

int main()
{
	
	int choose;
    //在使用rand函数前,需要用srand()函数设置随机数的生成器
    //srand函数需要unsigned类型的参数,而time函数返回的本质上是int类型,故用强制转换
    //time(),头文件是time.h函数会返回时间戳,返回一种time_t的结构体类型,本质上也是整型
	srand((unsigned)time(NULL));

    //游戏一直可以玩,而且一开始就可以玩游戏,故猜用do while结构
	do 
	{
		menu();
		printf("请选择:>");
		scanf("%d", &choose);
		switch (choose)
		{
		case 0:
			printf("退出游戏\n");
			break;
		case 1:
			system("cls");
			printf("游戏开始\n");
			game();
			printf("请选择是否继续游戏\n");
			break;
		default:
			system("cls");
			printf("选择错误,请重新选择\n");
			break;
		}
		

	} while (choose);	
	return 0;
}

 

标签:数字,int,printf,C语言,break,choose,time,游戏
来源: https://blog.csdn.net/xxlkcl/article/details/123600537

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有