C语言 猜数字游戏 猜1~100之间的数
猜数字游戏
猜1~100之间的数
#include<stdio.h>
#include<stdlib.h>
void menu() //菜单
{
printf("************************\n");
printf("****** 1.play *******\n");
printf("****** 0.exit *******\n");
printf("************************\n");
}
void game()
{
//rand()函数是生成随机数字0~32767的函数
//0~32767之间的所有数模100最大为99
int ret=rand()%100+1;
int guess=0;
while(1)
{
printf("请输入你猜测的数字:>");
scanf("%d",&guess);
if(ret<guess)
{
printf("猜大了");
}
else if(ret>guess)
{
printf("猜小了");
}
else
{
printf("猜对了%d\n",guess);
break;
}
}
}
int main()
{
int input=0;
//根据电脑时间生成随机数
srand((unsigned int)time(NULL));
do
{
menu();
printf("请进行选择:>");
scanf("%d",&input);
switch(input)
{
case 1:
game(); break;
case 0:
printf("推出程序!\n"); break;
default:
printf("选择错误,请重新选择!\n"); break
}
}while(input);
return 0;
}
运行结果
思路解析:
1.既然要猜数字,那么就要生成随机的数字,来让我们猜。这就用到了生成随机数的函数 r a n d ( ) 范围 0 到 32767 和 s r a n d ( ) \color{red}{rand()范围0到32767和srand()} rand()范围0到32767和srand(),rand()函数每次生成程序启动,生成的随机数都是一样的,可谓是一次性游戏。这里就要使用到srand()函数,让这个函数来读取我们电脑上的时间,这样就可以生成真正意义上的随机数。
2.rand()和srand()都在头文件
3.易出错的点:我们定义随机生成的数为 r e t \color{red}{ret} ret,猜测的数字为 g u e s s \color{red}{guess} guess,在函数==game()==中当我们猜测的数字,比随机数大的时候(ret
4.剩下的为一些简单的逻辑+语句,不懂可以看我这篇博客if 和 switch 语句
学的不是技术,更是梦想
还没有评论,来说两句吧...