猜数范围为1~100,猜大输出猜大了,猜小输出猜小了,游戏可以无限玩。
首先先做一个简单的菜单界面,只需要利用do……while循环就能实现,输入1开始游戏,输入0
退出游戏。
int main()
{
int input = 0;
do
{
printf("猜数字游戏,输入1开始,输入0退出\n");
scanf("%d", &input);
switch (input)
{
case 1:
game();
break;
case 0:
printf("您已退出\n");
break;
default:
printf("输入错误,请重新输入!\n");
break;
}
} while (input);
return 0;
}
实现菜单界面逻辑后,接着就是猜数字游戏代码的实现,首先要生成一个1~100的随机数
随机数生成需要用到rand()函数,在此之前需要调用一次srand()函数(只需调用一次,否则会出现随机值重复),所以把srand函数放在main函数里即可。
完整代码如下
#include <stdio.h>
#include <time.h>
void game()
{
int num = rand() % 100 + 1;
int guess = 0;
while (1)
{
printf("请输入你猜的数1~100:");
scanf("%d", &guess);
if(guess < num)
{
printf("猜小了\n");
}
else if (guess > num)
{
printf("猜大了\n");
}
else
{
printf("恭喜你!猜对了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
do
{
printf("猜数字游戏,输入1开始,输入0退出\n");
scanf("%d", &input);
switch (input)
{
case 1:
game();
break;
case 0:
printf("您已退出\n");
break;
default:
printf("输入错误,请重新输入!\n");
break;
}
} while (input);
return 0;
}