练习2-1

请对代码清单2-6的2处进行修改,将带有小数部分的实数值赋给x和y,查看结果如何?

答案:编译器会报错,因为小数的默认类型double是比int更大的类型。如果给double类型的变量赋值整数,则编译器不会报错。

练习2-2

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

  1. public static void main(String[] args) {
  2. int x,y,z;
  3. int sum,average; //合计值和平均值
  4. Scanner sc = new Scanner(System.in);
  5. System.out.println("请输入三个整数的值");
  6. x = sc.nextInt();
  7. y = sc.nextInt();
  8. z = sc.nextInt();
  9. sum = x+y+z;
  10. average = sum/3;
  11. System.out.println("合计值:"+sum+" 平均值:"+average);
  12. }

练习2-3

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

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

练习2-4

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

  1. public static void main(String[] args) {
  2. Scanner sc = new Scanner(System.in);
  3. System.out.println("整数值:");
  4. int x = sc.nextInt();
  5. System.out.println("加上10后的值是:"+(x+10));
  6. System.out.println("减去10后的值是:"+(x-10));
  7. }

练习2-5

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

  1. public static void main(String[] args) {
  2. Scanner sc = new Scanner(System.in);
  3. System.out.print("x的值:");
  4. double x = sc.nextDouble();
  5. System.out.print("y的值:");
  6. double y = sc.nextDouble();
  7. System.out.println("合计值是:"+(x+y));
  8. System.out.println("平均值是:"+(x+y)/2);
  9. }

练习2-6

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

  1. public static void main(String[] args) {
  2. System.out.println("求三角形的面积");
  3. Scanner sc = new Scanner(System.in);
  4. System.out.print("底:");
  5. double x = sc.nextDouble();
  6. System.out.print("高:");
  7. double y = sc.nextDouble();
  8. System.out.println("面积是:"+x*y/2);
  9. }

练习2-7

请编写如下所示程序

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

练习2-8

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

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

练习2-9

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

练习2-10

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

  1. public static void main(String[] args) {
  2. Scanner sc = new Scanner(System.in);
  3. System.out.printf("姓:");
  4. String first_name = sc.nextLine();
  5. System.out.printf("名:");
  6. String last_name = sc.nextLine();
  7. System.out.println("你好"+first_name+last_name+"先生。");
  8. }

第一章

第二章

第三章

第四章

第五章

第六章

第七章

第八章

第九章

第十章

第十一章

第十二章

第十三章

第十四章

第十五章

第十六章

明解Java第二章练习题答案的更多相关文章

  1. 明解JAVA 第二章答案

    练习2-1 编译错误,无法运行. 练习2-2 package candle1220; class Nightwatch{ public static void main(String[] args) ...

  2. Java编程思想第四版第二章练习题答案

    练习1:创建一个类,它包含一个int域和一个char域,它们都没有被初始化.将他们的值打印出来,以验证Java执行了默认初始化 public class JavaThinking { private ...

  3. 明解JAVA 第一章答案

    练习1-1 无法运行 练习1-2 package candle1220; class Nightwatch{ public static void main(String[] args) { Syst ...

  4. “全栈2019”Java第二章:安装JDK11(Windows)

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 文章原文链接 "全栈2019"Java第二章:安装JDK11(Windows) 下一 ...

  5. Java 第二章 变量

    第二章 变量 变量称为:是计算机语言中能储存计算机结果或能表示值抽象概念 .变量可以通过变量名访问 int money ; //变量 money=1000; //赋值 int money=1000: ...

  6. [Effective Java]第二章 创建和销毁对象

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  7. Java第二章----对象和类

    从第一章到第二章整整隔了一个月的时间,这速度也是慢的无语了.因为这个月负责开发公司一个SaaS类型APP,忙的昏天暗地终于上线了,这才有时间写个博客.本章还是以概念为主,有点枯燥重在理解. 第一节:对 ...

  8. Java 第二章 变量、数据类型和运算符

    第二章      变量.数据类型和运算符 什么是变量: 变量代表一块内存区域,变量类型不一样,这一块内存的大小也不一样. #在编程语言里面,你可以通过定义变量,向内存里添加数据或者修改内存已有的数据. ...

  9. 明解JAVA 第三章答案

    练习3-1 package candle1220; import java.util.Scanner; public class Nightwatch { public static void mai ...

  10. 如何创建和销毁对象(Effective Java 第二章)

    最近有在看Effective Java,特此记录下自己所体会到的东西,写篇博文会更加的加深印象,如有理解有误的地方,希望不吝赐教. 这章主题主要是介绍:何时以及如何创建对象,何时以及如何避免创建对象, ...

随机推荐

  1. [ABC150E] Change a Little Bit

    2023-03-10 题目 题目传送门 翻译 翻译 难度&重要性(1~10):7 题目来源 AtCoder 题目算法 数学,贪心 解题思路 显然 \(C_i\) 越小的位越早被修改越好.所以我 ...

  2. 《深入理解Java虚拟机》读书笔记:方法调用

      方法调用并不等同于方法执行,方法调用阶段唯一的任务就是确定被调用方法的版本(即调用哪一个方法),暂时还不涉及方法内部的具体运行过程.在程序运行时,进行方法调用是最普遍.最频繁的操作,但前面已经讲过 ...

  3. Robot 框架学习笔记

    Robot 框架学习笔记 为了更好地让读者理解快速学习新框架的思路,笔者接下来会继续介绍另一个名为 Robot 的自动化测试框架,希望读者能参考笔者从零开始讲解一个开发/测试框架的流程,从中总结出适合 ...

  4. Stack Overflow开发者调查发布:AI将如何协助DevOps

    Stack Overflow 发布了开创性的2023年度开发人员调查报告 [1].报告对 90,000 多名开发人员进行了调查,全面展示了当前软件开发人员的体验.接下来,本文将重点介绍几项重要发现,即 ...

  5. Pandas 使用教程 JSON

    目录 JSON 转换为 CSV 简单 JSON 从 URL 中读取 JSON 数据: 字典转化为 DataFrame 数据 内嵌的 JSON 数据 复杂 JSON Pandas 可以很方便的处理 JS ...

  6. 浅谈API安全的应用

    ​ 理论基础 API它的全称是Application Programming Interface,也叫做应用程序接口,它定义了软件之间的数据交互方式.功能类型.随着互联网的普及和发展,API 从早期的 ...

  7. 比 nvm 更好用的 node 版本管理工具

    什么是 Volta Volta 是一种管理 JavaScript 命令行工具的便捷方式. volta 的特点: 速度 无缝,每个项目的版本切换 跨平台支持,包括 Windows 和所有 Unix sh ...

  8. 腾讯事务处理技术验证系统3TS-Coo模块的项目环境安装使用说明

    本篇文章将详细说明3TS-Coo模板的安装和使用,帮助您快速上手项目 第一部分是简单的基础Docker相关概念,精炼的几句小白话快速理解即可: 第二部分是快速安装项目环境的安装文档,简单几行命令搞定, ...

  9. 【v2v迁移】Xen2kvm 迁移-linux篇

    迁移环境: 源平台:华为FusionComputeV100R006C10SPC101 目标平台:基于KVM虚拟化的云平台,本文以原生的libvirt为例 虚拟机:centos 7.6 具体操作步骤: ...

  10. zend framework 数据库操作(DB操作)总结

    (1)数据查询总结 fetchRow()这个方法返回一行,具体返回是相关数组还是什么用setFetchMode()决定fetchCol()返回第一列fetchOne()返回第一行,第一列.为一个值不是 ...