1.游戏规则
2.分析实现过程
- 生成随机数;
- 获取用户猜想数;
- 比较上面两者,给出结果(大了?小了?对了?);
- 循环实现直至猜对。
3.代码实现
3.1. c实现
- 生成随机数
- #include<time.h> //包含头文件
- srand((unsigned int)time(NULL));//种下随机数种子
- int rad=rand() % 100 + 1;//生成随机数rad
- 获取用户猜想
- #include<stdio.h>//包含头文件
- scanf_s("%d", &input);//用户从键盘输入猜想数
- 比较
- input==rad//猜对了
- input>rad//猜大了
- input<rad//猜小了
- 循环实现
while(1)
{
if(input==rad)
break;
}
- 源代码
#include<stdio.h>
#include<Windows.h>
#include<time.h>
void show()
{
printf("*********************\n");
printf("********0.PLAY*******\n");
printf("********1.EXIT*******\n");
printf("*********************\n");
printf("请输入你的选择:");
}
void game()
{
int rad=rand() % 100 + 1;
int input = 0;
while (1)
{
printf("请输入你的猜想:(0~100)");
scanf_s("%d", &input);
if (input == rad)
{
printf("猜对了!\n");
break;
}
else if (input > rad)
{
printf("大了!\n");
}
else
{
printf("小了!\n");
}
}
}
int main()
{
srand((unsigned int)time(NULL));
int quit = 0;
while (!quit)
{
show();
int select = 0;
scanf_s("%d", &select);
switch (select)
{
case 0:
{
game();
printf("要不要再来一次\n");break;
}
case 1:
{
quit = 1; break;
}
default:
{
printf("输入有误,重新输!\n");break;
}
}
}
system("pause");
return 0;
}
- 运行结果

3.2. Java实现
- 生成随机数
- import java.util.Random;
- Random random = new Random(); //随机种子
- int ran = random.nextInt(100);
- 获取用户猜想
- import java.util.Scanner;
- Scanner sc = new Scanner(System.in);
- int num = sc.nextInt();
- 比较
- input==rad//猜对了
- input>rad//猜大了
- input<rad//猜小了
- 循环实现
while(true)
{
if(input==rad)
break;
}
- 源代码
import java.util.Random;
import java.util.Scanner;
public class TestDemo {
public static void main(String[] args) {
Random random = new Random();
Scanner sc = new Scanner(System.in);
int ran = random.nextInt(100);
while (true) {
System.out.println("请输入你猜的的数字: (1-100)");
int num = sc.nextInt();
if (num < ran) {
System.out.println("猜低了鸭");
} else if (num > ran) {
System.out.println("猜高了鸭");
} else {
System.out.print("猜对了鸭!!");
break;
}
}
}
}
- 运行结果
