猜数字游戏
系统随机生成1-100的数字,由玩家进行猜测。如果猜大了,系统反映猜大了,如果猜小了,系统反映猜小了,就这样样依次缩小范围,最后猜出正确的数字。
一.思路
1.首先让系统生成一个随机数字。
2.玩家输入一个数,然后两个数字进行对比,根据反馈信息,逐渐锁定目标。
二.代码实现
1.主函数
首先将大致框架写出来,再逐个写每个函数。
代码如下:
int main()
{
srand((unsigned int)time(NULL));//创建一个随机数
int input;
do
{
menu(); //游戏菜单
printf("请输入(1/0):>");
scanf("%d", &input);
switch (input)
{
case 1: //如果输入1,游戏开始
game();
break;
case 0: //如果输入0,游戏结束
printf("退出游戏\n");
break;
default:
printf("输入错误,请重新出入\n");
break;
}
} while (input);
return 0;
}
2.菜单函数
void menu();
代码如下:
void menu()
{
printf("*******************\n");
printf("****猜数字游戏*****\n");
printf("******1. play******\n");
printf("******0. exit******\n");
printf("*******************\n");
}
效果展示:
3.game()函数
这里需要注意rand()函数在使用时不能单独使用,否则每次生成的随机数都是一样的,必须搭配srand()函数,且srand函数调用一次即可。
在这里讲一下这些函数的用法:
大家也可以去:(cplusplus.com)这个网站进行查询。
void game()
{
int guess;
int ret = rand() % 100 + 1;//随机生成一个1-100的数字。
while (1)
{
printf("请猜数字:>\n");
scanf("%d", &guess);
if (guess > ret)
{
printf("猜大了\n");
}
else if (guess < ret)
{
printf("猜小了\n");
}
else
{
printf("恭喜你,回答正确\n");
break;
}
}
}
三.总代码实现
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
printf("*******************\n");
printf("****猜数字游戏*****\n");
printf("******1. play******\n");
printf("******0. exit******\n");
printf("*******************\n");
}
void game()
{
int guess;
int ret = rand() % 100 + 1;
while (1)
{
printf("请猜数字:>\n");
scanf("%d", &guess);
if (guess > ret)
{
printf("猜大了\n");
}
else if (guess < ret)
{
printf("猜小了\n");
}
else
{
printf("恭喜你,回答正确\n");
break;
}
}
}
int main()
{
srand((unsigned int)time(NULL));
int input;
do
{
menu();
printf("请输入(1/0):>");
scanf("%d", &input);
switch (input)
{
case 1:
game();
break;
case 0:
printf("退出游戏\n");
break;
default:
printf("输入错误,请重新出入\n");
break;
}
} while (input);
return 0;
}
效果展示:
总结:
内容只供大家参考,如有错误可以评论区留言。
加油!!!!