#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int menu()
{
printf("*********************************\n");
printf("************1.游戏开始***********\n");
printf("************2.游戏结束***********\n");
printf("请输入您的选择:");
int choice = 0;
scanf("%d", &choice);
return choice;
}
void Game()
{
srand(time(0));//用时间作为随机种子
int result = rand() % 100 + 1;//程序生成一个[1-100]随机数,作为需要猜的数字
while (1)
{
printf("请输入一个数字[0-100]:");//提示用户输入一个数字,并进行比较
int num = 0;
scanf("%d", &num);
if (num > result)//根据比较结果,给用户一个反馈
{
printf("猜大了!\n");
}
else if (num < result)
{
printf("猜小了!\n");
}
else {
printf("恭喜你,猜对了!\n");
break;
}
}
}
int main()
{
while (1)
{
int choice = menu();
if (choice == 1)//开始游戏
{
Game();
}
else if (choice== 2)//结束游戏
{
printf("游戏结束!\n");
}
else
{
printf("非法输入!\n");
}
}
}
刚开始仅利用rand函数让电脑产生1-100的随机数,发现电脑每次产生的随机数都相同。
后来利用时间戳{srand(time(0))}产生随机种子。