在前面我们用C语言实现了猜数字,这里我们C语言告一段落,开始Java,我们尝试用Java来实现猜数字游戏
先分析一波
1.我们要生成随机数? ? ? ? ? ? ? ? ? ? ? ? 2.我们要让玩家进行猜数字? ? ? ? ? ? ? ? ? ? ?3. 我们要有判胜负
目录
1.电脑生成1到100的随机数
2.玩家进行猜数字
3.判胜负
4.Java猜数字完整代码
5.C语言猜数字完整代码
1.电脑生成1到100的随机数
这里我们用Java有直接生成随机数的方法,可以直接使用,比C语言方便的不是一点点啊
Random random =new Random();
int ranNum = random.nextInt(100)+1;
短短的两句代码就可以生成一个1-100的随机数,这里需要注意一点,random.nextint括号里的范围是[0,n)的是左闭右开的,因为我们需要1-100的随机数,所以我们只需要在原来的基础上+1就好了
2.玩家进行猜数字
这里我们需要从键盘输入数字,所以要调用Scanner方法来做
Scanner sc =new Scanner(System.in);
n = sc.nextInt();
这样我们就可以得到玩家输入的数字了
3.判胜负
这里我们让玩家输入的数和我们电脑生成的随机数进行比对,然后对他进行提示(猜大了,猜小了,猜对了)如果猜错了,进行提示之后,应该让玩家继续猜
while(true){
System.out.println(ranNum);
System.out.println("请输入你猜的数字:>");
n = sc.nextInt();
if(n == ranNum){
System.out.println("猜对了");
break;
}else if(n > ranNum){
System.out.println("猜大了");
}else{
System.out.println("猜小了");
}
一个while循环轻松搞定,然后再包上头文件就可以轻松的解决问题了
4.Java猜数字完整代码
import java.util.Random;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
Random random =new Random();
int ranNum = random.nextInt(100)+1;
int n;
while(true){
System.out.println(ranNum);
System.out.println("请输入你猜的数字:>");
n = sc.nextInt();
if(n == ranNum){
System.out.println("猜对了");
break;
}else if(n > ranNum){
System.out.println("猜大了");
}else{
System.out.println("猜小了");
}
}
}
}
5.C语言猜数字完整代码
在这篇博客中,我对C语言的猜数字进行了详细分析,感兴趣可以去观看
C语言实现猜数字
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
printf("************************\n");
printf("*******1.猜数字*********\n");
printf("*******0.退出***********\n");
printf("************************\n");
}
void game()
{
int guess,ret;
ret=rand()%100+1;
printf("请输入:>\n");
while (1)
{
scanf("%d", &guess);
if (guess > ret)
printf("猜大了\n");
else if (guess < ret)
printf("猜小了\n");
else
{
printf("恭喜你,猜对了\n");
break;
}
}
}
int main()
{
int n;
srand((unsigned int)time(NULL)); //这个位置不用纠结,在cplasplas里面的举例里,这个函数和rand是配合使用的
do
{
menu();
scanf("%d", &n);
switch (n)
{
case 1:
{
game();
break;
}
case 0:
{
printf("退出程序\n");
break;
}
default:
printf("输入错误\n");
break;
}
} while (n);
return 0;
这里我们进行一个比较,Java我没设置目录,但是如果加上,代码量其实也差不多,但是Java生成随机数的方法比C语言简单很多,也可以体现出Java的便捷性,当然C的性能肯定是比Java好的,所以我认为每一种语言都有优略势,重要的是培养自己的编程思想
|