首页 > 编程语言 >明解Java第二章练习题答案

明解Java第二章练习题答案

时间:2023-10-31 10:35:03浏览次数:41  
标签:练习题 rand Java Scanner 明解 System sc println out

练习2-1

请对代码清单2-6的2处进行修改,将带有小数部分的实数值赋给x和y,查看结果如何?
答案:编译器会报错,因为小数的默认类型double是比int更大的类型。如果给double类型的变量赋值整数,则编译器不会报错。

练习2-2

请编写一段程序,对三个int型变量进行赋值,并计算合计值和平均值。

    public static void main(String[] args) {

        int x,y,z;
        int sum,average;  //合计值和平均值

        Scanner sc = new Scanner(System.in);
        System.out.println("请输入三个整数的值");
        x = sc.nextInt();
        y = sc.nextInt();
        z = sc.nextInt();

        sum = x+y+z;
        average = sum/3;

        System.out.println("合计值:"+sum+" 平均值:"+average);

    }

练习2-3

请编写一段程序,如图所示,直接重复并显示通过键盘输入的整数值

        Scanner sc = new Scanner(System.in);
        System.out.println("整数值:");
        int x = sc.nextInt();
        System.out.println("输入的是:"+x);

练习2-4

请编写一段程序,如同所示,对通过键盘输入的整数值进行加10和减10的运算,并输出结果值。

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.println("整数值:");
        int x = sc.nextInt();
        System.out.println("加上10后的值是:"+(x+10));
        System.out.println("减去10后的值是:"+(x-10));

    }

练习2-5

请编写一段程序,读入两个实数值,求它们的和与平均值并显示结果

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.print("x的值:");
        double x = sc.nextDouble();
        System.out.print("y的值:");
        double y = sc.nextDouble();
        System.out.println("合计值是:"+(x+y));
        System.out.println("平均值是:"+(x+y)/2);

    }

练习2-6

请编写一段程序,读入三角形的底和高,并显示其面积。

    public static void main(String[] args) {

        System.out.println("求三角形的面积");
        Scanner sc = new Scanner(System.in);
        System.out.print("底:");
        double x = sc.nextDouble();
        System.out.print("高:");
        double y = sc.nextDouble();
        System.out.println("面积是:"+x*y/2);

    }

练习2-7

请编写如下所示程序

  • 随机生成并显示一位数的正整数(1~9的值)
  • 随机生成并显示一位数的负整数(-9 ~ -1的值)
  • 随机生成并显示两位数的正整数(10~99的值)
    public  static void rand(){
        Random rand = new Random();  //创建对象
        int lucky = 1 + rand.nextInt(8);  //生成1~9的正整数
        System.out.println(lucky);

        lucky = -rand.nextInt(8) - 1;  //生成-9 ~ -1的值
        System.out.println(lucky);

        lucky = 10 + rand.nextInt(90);  //生成10~99
        System.out.println(lucky);
    }

练习2-8

请编写一段程序,读入通过键盘输入的整数值,然后随机生成并显示其+,-5范围内的整数值

  • 生成-5 ~ 5 = 生成(0~10)-5 的随机整数
        Scanner sc = new Scanner(System.in);   //创建键盘输入对象
        Random rand = new Random();  //创建随机数对象
        System.out.print("整数值:");
        int num = sc.nextInt();              //输入整数值
        int lucky = rand.nextInt(11) - 5;  //生成-5~5的正随机数
        int result = num + lucky;
        System.out.println("生成了该值+-5范围内的随机数是:"+result);

练习2-9

  • 随机生成并显示大于等于0.0小于1.0的实数值
  • 随机生成并显示大于等于0.0小于10.0的实数值
  • 随机生成并显示大于等于-1.0小于1.0的实数值
    public static void rand3(){
        Random rand = new Random();
        double lucky1 = rand.nextDouble();
        System.out.println("随机生成大于等于0.0小于1.0的实数值:" + lucky1);
        double lucky2 = rand.nextDouble() + 9.0;
        System.out.println("随机生成大于等于0.0小于10.0的实数值:" + lucky2);
        double lucky3 = rand.nextDouble()*2.0 - 1 ;
        System.out.println("随机生成大于等于-1.0小于1.0的实数值:" + lucky3);
    }

练习2-10

请编写一段程序,如同所示,通过键盘分别读入姓名的姓和名,并打招呼

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.printf("姓:");
        String first_name = sc.nextLine();
        System.out.printf("名:");
        String last_name = sc.nextLine();
        System.out.println("你好"+first_name+last_name+"先生。");

    }

第一章
第二章
第三章
第四章
第五章
第六章
第七章
第八章
第九章
第十章
第十一章
第十二章
第十三章
第十四章
第十五章
第十六章

标签:练习题,rand,Java,Scanner,明解,System,sc,println,out
From: https://www.cnblogs.com/sillyfox/p/17799681.html

相关文章

  • java 上传大文件
    Java上传大文件实现方法简介在开发过程中,我们经常会遇到需要上传大文件的需求。本文将教会你如何用Java实现上传大文件的功能。整体流程首先,让我们来看一下实现上传大文件的整体流程。下面是一个流程表格:步骤 描述1 创建一个文件上传表单2 在后端编写一个接收上传文件的控制器3 ......
  • JAVA-EE手写ThreadLocal源码实现一个线程一个连接对象------Java-Web项目
    手写ThreadLocalpackagecom.bjpowernode.ThreadLocal;importjava.util.HashMap;importjava.util.Map;publicclassMyThreadLocal<T>{privateMap<Thread,T>map=newHashMap<>();publicvoidset(To){//向threadLocal中绑定......
  • Java 基础篇day03
    流程控制分支结构if和switchif分支根据条件(真或假)来决定执行某段代码点击查看代码if(条件表达式){代码}if(条件表达式){代码1;}else{代码2;}if(条件表达式1){代码1;}elseif(条件表达式2){代码2;}...else{代码n;}switch分支点击查看代码switch(条件......
  • 每日博客——使用Maven对Java独立应用程序进行编译打包
    使用Maven对Java独立应用程序进行编译打包1.安装Maven网盘下载 apache-maven-3.9.2-bin.zip链接为:https://pan.baidu.com/s/181shkgg-i0WEytQMqeeqxA(提取码:9ekc)sudounzip/export/server/apache-maven-3.9.2-bin.zip-d/export/server/cd/export/server/sudomvapac......
  • Java基础 反射获取成员方法
     代码示例:publicstaticvoidmain(String[]args)throwsException{//获取class字节码文件对象Classclazz=Class.forName("pojo.Student");//获取所有的方法(getMethods()还能连着父类的所有的公共方法一起获得,但getDeclaredMethods()不能获取父类里面的方法......
  • Java基础之方法
    方法前言1.程序开始执行的时候先从main方法开始2.Java语言中所有的方法体的代码都要遵守从上到下执行3.mian方法程序会自动调用,而main以外的方法需要程序员自己调用。4.main以外的方法只有被调用的时候才会执行什么是方法?为什么使用方法?方法是一个可以重复使用的代码段。而......
  • Java流程控制_01分支结构
    1. if分支  2.switch分支switch可以快速找到某个值,不用一个一个找(底层代码)  ......
  • javaweb学习每日总结-第十天
    第十天学习今天我没有学习什么新的知识,而且回顾我之前所学习的一切的java知识,陷入了思考。一切都是因为今天王建民老师的考试,今天的考试,我取得了相对比较优异的成绩。考试一共一个小时,虽然结果还不错,但是我心里明白,我的技术还相当不熟练,一旦动起手来敲代码,我好像就迷失了方向,我想......
  • [Java]有无static的方法调用区分
    1.不带static的方法是实例方法,实例方法调用必须先创建对象,调用时:引用.2.带static的方法调用:类名.注:当引用指向的对象为空时,带staic的方法可采用引用.去调用,但此时引用无意义,反而会容易让别人误认为这个方法是实例方法,因此最好还是采用类名.来调用。下面是代码示例:publicclass......
  • JavaWeb-JS基础
    4.JS基础(1)JS的引入方式HTML内部引入将JS代码放在“<script></script>”标签之间在HTML文档中,可以在任意地方放置任意数量的<script>一般将其放在body元素的底部,改善显示速度<script>alert("WY")//JS代码</script>外部.js文件引入在外部单独编写js......