这个游戏是由计算机产生一个随机数,用户来猜数字。这就需要知道如何产生随机数。rand函数可以的功能即生成一系列的随机数,头文件为stdlib.h ,但是使用rand函数产生随机数需要用时间种子srand,头文件为time.h,这样每次产生的随机数才会不一样,否则随机数不会改变。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void menu()
{
printf("******************************\n");
printf("******** 1.play *********\n");
printf("******** 0.Exit *********\n");
printf("******************************\n");
}
void game()
{
int ret = 0;
int num = 0;
ret = rand() % 100 + 1; //产生0~100之间的随机数
while (1)
{
printf("请猜数字:>");
scanf("%d", &num);
if (ret == num)
{
printf("恭喜你!猜对了\n");
break;
}
else if (num > ret)
{
printf("猜大了\n");
}
else
{
printf("猜小了\n");
}
}
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
do
{
menu();
printf("请选择:>");
scanf("%d", &input);
switch (input)
{case 0:
printf("退出游戏\n");
break;
case 1:
game();
break;
default:
printf("选择错误\n");
break;
}
}while (input);
system("pause");
return 0;
}