版本1:(随机数在0~99之间产生,但玩家每次猜一个数字后随机数会重新产生,所以每次猜数字只有百分之一的成功机会)
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
void menu(void)
{
printf("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
printf("$ 猜数字游戏 $\n");
printf("$ 请选择(1/0) $\n");
printf("$ 1、开始游戏 $\n");
printf("$ 0、结束游戏 $\n");
printf("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
}
void game(void)
{
int j = 0;
while (1)
{
int i = rand() % 100;
printf("请输入你猜的数字:\n");
scanf(" %d", &j);
if (j > i)
{
printf("猜大了\n");
}
else if (j < i)
{
printf("猜小了\n");
}
else
{
printf("猜中了\n");
break;
}
}
}
int main()
{
srand(time(NULL));
int intput = 0;
do
{
menu();
scanf(" %d", &intput);
switch (intput)
{
case 1:
game();
break;
case 0:
break;
default:
printf("请重新选择:\n");
break;
}
} while (intput);
return 0;
}
版本二:(电脑根据玩家猜的数字给与错误提示,即玩家猜大了电脑提示猜小了,玩家猜小了电脑提示猜大了)
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
void menu(void)
{
printf("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
printf("$ 猜数字游戏 $\n");
printf("$ 请选择(1/0) $\n");
printf("$ 1、开始游戏 $\n");
printf("$ 0、结束游戏 $\n");
printf("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
}
void game(void)
{
int j = 0;
int i = 1 + rand() % 199;
while (1)
{
printf("请输入你猜的数字:\n");
scanf(" %d", &j);
if (j > i)
{
printf("猜小了\n");
}
else if (j < i)
{
printf("猜大了\n");
}
else
{
printf("猜中了\n");
break;
}
}
}
int main()
{
srand(time(NULL));
int intput = 0;
do
{
menu();
scanf(" %d", &intput);
switch (intput)
{
case 1:
game();
break;
case 0:
break;
default:
printf("请重新选择:\n");
break;
}
} while (intput);
return 0;
}