猜数字,玩游戏(随机生成1到100之间的数字,进行猜数字游戏)
猜数字,玩游戏(随机生成1到100之间的数字,进行猜数字游戏)
少年强,则国强,从游戏开始.............变强????
我想,对于不少学者,大众......儿童时代有着一部游戏机都能玩老长时间,但是仅仅是玩游戏,现如今,我们都已经成年,儿时梦想便是自己开发自己想玩的游戏,但是梦想何其遥远,现在只能一步一步慢慢来了,但是,现在对于游戏开发.....小型的倒是还可以!
笔者依靠专业指导人员,书写了人生第一步游戏代码,但是对于游戏开发,我想C++应用的比较多,而我计划学习java 所以就........
《《《《《话不多少,并且已经跑题》》》》》
前提提示:猜数字游戏,电脑随机(依据变化的时间)生成一个数字,我们进行猜数字
在电脑上,我们想要随机生成一个数字,并且在不断变化中,我想只有依靠时间戳,才能更好的去随机生成数字,至于其他生成数字的方法,原谅笔者目前还没有见过。
时间戳进行转化的过程为:转化过来为1到32767之间的随机数字,但是在进行32768次之后,肯定有重复的随机数生成
对于32767,是一个比较大的数字,我们进行猜数字游戏有点广泛,下面我们进行对1到100之间的数字,利用时间戳进行猜数字游戏
下面请看具体代码:
//猜数字游戏
//电脑随机生成一个数字
//猜数字
//如果猜大了,告知猜大了
//如果猜小了,告知猜小了
//如果猜对了,告知猜对了
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void menu()
{
printf("********************************\n");
printf("********* 1.play ************\n");
printf("********* 0.exit ************\n");
printf("********************************\n");
}
//rand函数可以随机生成一个数
//返回1到32767之间的随机数字
void game()
{
int guess = 0;
//1.生成随机数
int ret = rand() % 100 + 1; //0到99———》+1变成0到100
//printf("%d\n",ret);
//2.猜数字
while (1)
{
printf("请猜数字: \n");
scanf_s("%d", &guess);
if (guess < ret)
{
printf("猜小了\n");
}
else if (guess > ret)
{
printf("猜大了\n");
}
else
{
printf("恭喜你,猜对了\n");
}
}
}
int main()
{
int input = 0;
//设置随机数生成器
srand((unsigned int)time(NULL));
do
{
menu();
printf("请选择:》\n");
scanf_s("%d", &input);
switch (input)
{
case 1:game(); break;
case 0:printf("退出游戏\n"); break;
default:
printf("选择错误,请重新选择\n"); break;
}
} while (input);
return 0;
}
首先;我们需要有一个菜单,来进行对我们玩家的指导;其次生成随机数,利用了rand和srand函数,int ret = rand() % 100 + 1; //0到99———》+1变成0到100,利用这个过程,(具体注释我想读者应该可以看懂,就不做过多解释)实现了1到100随机数的生成,在一定范围内的次数,将不会重复!
在这个代码里面用了函数,取余,if语句表判断,do...whlie 循环,switch(case)结构,等
具体的代码运转结果为:
猜数字游戏过程仅供参考
CSDN-Ada助手: 恭喜你这篇博客进入【CSDN每天值得看】榜单,全部的排名请看 https://bbs.csdn.net/topics/619235219。
金丝草: static int my_test(void) { static unsigned char buffer[100] = { 0 }; buffer[0] = 0x45; memcpy(buffer+1, buffer+0, 50); for (size_t i = 0; i < 50; i++) { printf(" =0x%04x ", buffer[i]); } printf("test end\r\n"); } 在vs里执行后的结果是这样的 =0x0045 =0x0045 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 =0x0000 test end 想问下 为啥呀
麦麸卷: 第四题打印的应该是第一个元素和第四个元素,你写错了
CSDN-Ada助手: Java 技能树或许可以帮到你:https://edu.csdn.net/skill/java?utm_source=AI_act_java
普通网友: 支持一下,细节很到位!【我也写了一些相关领域的文章,希望能够得到博主的指导,共同进步!】