Java实战项目【1】(猜数字)

Java实战项目【1】(猜数字),第1张

在前面我们用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
#include
#include
 
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好的,所以我认为每一种语言都有优略势,重要的是培养自己的编程思想

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/733462.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存