返回

运用c语言完成简单的猜数字游戏(随机数为1到100)

发布时间:2023-04-12 08:59:33 347
# 数据

要完成一个猜数字游戏首先我们要让电脑生成一个随机数,这时候我们就可以使用rand函数这个函数的作用就是返回一个随机数但如果不先配置随机数生成器那么就会出现一个问题就是就是每一次重新启动这个代码那么生成的随机数还是你上次游玩时的随机数,这就不够随机这时我们便要使用srand函数来配置随机数生成器但使用srand函数要运用一个不断在变化的值这时候我们便可以使用时间戳来配置,而c语言中time函数便可以返回一个时间戳。其中rand和srand函数需要头文件stdlib.h。time函数需要time.h。这就i是这个代码最难以实现的bufen。

#include
#include
#include
void menu()//这里运用void的目的是我只是需要这个函数创建一个界面不需要它返回给主函数一个值。
{
printf("****猜数字游戏****\n");
printf("****1.play******\n");
printf("****0.exit*******\n");
printf("*****************\n");
}
void game()
{
int ret = rand() % 100 + 1;//因为rand函数生成的随机数范围为0至RAND_MAX 间过于大,模了100使范围变成了0到99加上一个1变成了1到100
printf("请猜数字:\n");
int guess = 0;
while (1)
{
scanf("%d", &guess);
if (guess<ret)
{
printf("猜小了\n");
}
if (guess>ret)
{
printf("猜大了\n");
}
if (guess == ret)
{
printf("恭喜你,猜对了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned)time(NULL));//因为在使用time函数时要给与它一个指针但我们不需要所以便传给它一个空指针同时由于srand函数需要的是unsigned数据类型的变化值所以我们还得让时间戳强制转换类型
do
{
menu();//这个就是简单的界面函数
printf("请选择:<");
scanf("%d", &input);
switch (input)
{
case 1:
game();
case 0:
break;
printf("退出游戏");
break;
default:
printf("选择错误,请重新选择");
break;
}
} while (input);//这里放input意思就是当你选择了0后便会终止循环退出游戏。
return 0;
}

运行结果

运用c语言完成简单的猜数字游戏(随机数为1到100)_随机数

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线