[C语言]猜数字游戏
作者:互联网
要求:
- 自动产生一个1-100之间的随机数
- 猜数字
- 猜对了,就恭喜你且游戏结束
- 猜错了,会告知是猜大了还是小了,然后继续猜,直至正确
- 游戏可以一直玩,除非退出游戏
#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