Java语言程序设计(基础篇)原书第十一版 梁勇 第7、8章 课后题答案

合集下载

java语言程序设计课后习题答案

java语言程序设计课后习题答案

java语言程序设计课后习题答案第一章:计算机、程序和JAVA概述1、2、1什么是硬件和软件?答:硬件指计算机中可见的物理部分;而软件提供不可见的指令,这些指令控制硬件并使硬件完成特定的任务。

1、2、2列举计算机的5个主要硬件组件。

答:中央处理器(CPU);内存(主存);存储设备(磁盘、光盘);输入设备(鼠标、键盘);输出设备(显示器、打印机);通信设备(调制解调器、网卡)。

1、2、3编写“CPU”代表什么含义?测量CPU速度的单位是什么?答:CPU(Central Proceing Unit)中央处理单元,包括控制单元和算术、逻辑单元;单位是HZ,现在通常以MHZ,GHZ数量级衡量。

1、2、4什么是比特?什么是字节?答:bit是计算机物理设备中存储的最小单位;8个bit为1个byte。

1、2、5内存是用来做什么的?RAM代表什么?为什么内存成为RAM?答:内存用来存储程序和数据;RAM(Random-Acce Memory)-可随机访问存储介质;因为内存可以按任意顺序存取字节所以被称为RAM(按功能划分)。

1、2、6用于测量内存大小的单位是什么?用于测量磁盘大小的单位是什么?答:GB,TB1、2、7内存和永久存储设备的主要不同是什么?答:内存是易失性存储介质(断电即失),存储容量小,传输速度快;永久存储设备为非易失性存储介质(断电可留),存储容量大,传输速度慢。

1、3、1CPU能理解什么语言。

机器语言。

1、3、2什么是汇编语言?什么是汇编器?汇编语言能用短的描述性单词来表示每一条机器语言指令,是一种低级语言。

汇编器可以将汇编语言转换成机器语言。

1、3、3什么是高级编程语言?什么是源程序?很像英语,易于学习和使用的编程语言称为高级编程语言。

使用高级编程语言编写的程序称为源程序。

1、3、4什么是解释器?什么是编译器?解释器会逐条读取源代码中的语言,并立刻翻译成机器代码或者虚拟机器代码,然后立刻运行。

Java语言程序设计(基础篇)原书第十一版 梁勇 第7、8章 课后题答案

Java语言程序设计(基础篇)原书第十一版 梁勇 第7、8章 课后题答案

7.7统计个位数的数目public class DemoA {public static void main(String[] args) {int num[]=new int[100];int counts[]=new int[10];for (int i=0,n=0;i<100;i++){num [i]=(int)(Math.random()*9);counts[num[i]]++;System.out.print(num[i]+"\t");n++;if (n%10==0){System.out.println();}}System.out.println();for (int j=0;j<10;j++){System.out.print(j+"出现了"+counts[j]+"次\t");}}7.27相同的数组public class List {public static void main(String[] args) {int[] list1= new int[5];int[] list2= new int[5];Scanner in=new Scanner(System.in);System.out.println("请输入第一个数组(5位):");for (int i=0;i<5;i++) { list1[i] = in.nextInt(); }System.out.println("请输入第二个数组(5位):");for (int i=0;i<5;i++){ list2 [i]=in.nextInt(); }equals(list1,list2);}public static boolean equals(int[] list1,int[] list2){Arrays.sort(list1);Arrays.sort(list2);if (Arrays.equals(list1,list2)){ System.out.println("两数组相同"); }else System.out.print("两数组不相同");return false;}}8.1求矩阵中各列数字的和public class SumColumn {public static void main(String[]args){int columnIndex = 0;Scanner input = new Scanner(System.in);System.out.println("请输入一个3×4的数组:");double[][]m=new double[3][4];for(int i=0;i<m.length;i++)for(int j=0;j<m[i].length;j++)m[i][j]=input.nextDouble();sumColumn(m,columnIndex);}public static double sumColumn(double[][]m,int columnIndex ){for( ;columnIndex<m[0].length;columnIndex++ ){double total=0;for(int row=0;row<m.length;row++){total+=m[row][columnIndex];}System.out.println("第" + (columnIndex+1)+ "列的和是"+total);}return 0;}}8.2求矩阵主对角线上的和public class Text {public static void main(String[]args){int columnIndex = 0;Scanner input = new Scanner(System.in);System.out.println("请输入一个4×4的数组:");double[][]m=new double[4][4];for(int i=0;i<m.length;i++)for(int j=0;j<m[i].length;j++)m[i][j]=input.nextDouble();sumColumn(m,columnIndex);}public static double sumColumn(double[][]m,int columnIndex ){ double sum1=0;double sum2=0;for( ;columnIndex<m[0].length;columnIndex++ ){sum1+=m[columnIndex][columnIndex];}for(int i=0,j=3 ;i>4;i++,j-- ){sum2+=m[i][j];}System.out.println("矩阵主对角线之和为:"+(sum1+sum2));return 0;}}。

Java语言程序设计课后习题答案全集

Java语言程序设计课后习题答案全集

Java语言程序设计课后习题答案全集Java语言程序设计是一门广泛应用于软件开发领域的编程语言,随着其应用范围的不断扩大,对于掌握Java编程技巧的需求也逐渐增加。

为了帮助读者更好地掌握Java编程,本文将提供Java语言程序设计课后习题的全集答案,供读者参考。

一、基础知识题1. 代码中的注释是什么作用?如何使用注释.答:注释在代码中是用来解释或者说明代码的功能或用途的语句,编译器在编译代码时会自动忽略注释。

在Java中,有三种注释的方式:- 单行注释:使用"// " 可以在代码的一行中加入注释。

- 多行注释:使用"/* */" 可以在多行中添加注释。

- 文档注释:使用"/** */" 可以添加方法或类的文档注释。

2. 什么是Java的数据类型?请列举常见的数据类型。

答:Java的数据类型用来指定变量的类型,常见的数据类型有:- 基本数据类型:包括整型(byte、short、int、long)、浮点型(float、double)、字符型(char)、布尔型(boolean)。

- 引用数据类型:包括类(class)、接口(interface)、数组(array)等。

二、代码编写题1. 编写Java程序,输入两个整数,求和并输出结果。

答:```javaimport java.util.Scanner;public class SumCalculator {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("请输入第一个整数:");int num1 = scanner.nextInt();System.out.print("请输入第二个整数:");int num2 = scanner.nextInt();int sum = num1 + num2;System.out.println("两个整数的和为:" + sum);}}```三、综合应用题1. 编写Java程序,实现学生信息管理系统,要求包括以下功能:- 添加学生信息(姓名、年龄、性别、学号等);- 修改学生信息;- 删除学生信息;- 查询学生信息。

Java语言程序设计(基础篇)原书第十一版-梁勇-第2-3章-课后题答案

Java语言程序设计(基础篇)原书第十一版-梁勇-第2-3章-课后题答案

2.5编写程序,读入英尺数,将其转换成米数并显示结果package pro0904;import java.util.Scanner;public class Feet {public static void main(String[] args) {Scanner in=new Scanner(System.in);System.out.print("请输入英尺数:");double feet=in.nextDouble();System.out.print(feet+"英尺是"+0.305*feet+"米");}}2.10编写程序,计算将水从初始温度加热到最终温度所需要的能量。

应提示用户输入水的重量,以及水的初始温度和最终温度package pro0904;import java.util.Scanner;public class Energy {public static void main(String[] args) {Scanner in=new Scanner(System.in);System.out.print("请输入水的重量(kg):");double m=in.nextDouble();System.out.print("请输入初始温度:");double t1=in.nextDouble();System.out.print("请输入最终温度:");double t2=in.nextDouble();System.out.print("所需的能量为"+m*(t2-t1)*4184);}}2.13假设你每月向银行账户存100美元,年利率为5%,那么每月利率是0.05/12=0.00417。

编写程序显示六个月后账户上的钱数package pro0904;import java.util.Scanner;public class Money {public static void main(String[] args) {Scanner in=new Scanner(System.in);System.out.print("请输入存取月份:");int month=in.nextInt();double money=0;for (int i=0;i<month;i++){money+=100;money=money*1.00417;System.out.println(money);}System.out.print("六个月后账户上的钱数为"+money);}}2.15编写程序提示用户输入体重(磅为单位),以及身高(英寸为单位),然后显示BMI。

(完整版)Java语言程序设计(基础篇)原书第十版梁勇著第一章答案

(完整版)Java语言程序设计(基础篇)原书第十版梁勇著第一章答案

第一章1.1 public class Test{public static void main(String[] args){System.out.println("Welcome to Java !");System.out.println("Welcome to Computer Science !");System.out.println("Programming is fun .");}}1.2 public class Test{public static void main(String[] args){for(int i = 0;i <= 4;i++){System.out.println("Welcome to Java !");}}}1.3 public class Test{public static void main(String[] args){System.out.println(" ]");System.out.println(" ]");System.out.println("] ]");System.out.println(" ]]");}}public class Test{public static void main(String[] args){System.out.println(" A");System.out.println(" A A");System.out.println(" AAAAA");System.out.println("A A");}}public class Test{public static void main(String[] args){System.out.println("V V");System.out.println(" V V");System.out.println(" V V");System.out.println(" V");}}1.4 public class Test{public static void main(String[] args){System.out.println("a a^2 a^3");System.out.println("1 1 1");System.out.println("2 4 8");System.out.println("3 9 27");System.out.println("4 16 64");}}1.5 public class Test{public static void main(String[] args){System.out.println((9.5*4.5-2.5*3)/(45.5-3.5));}}1.6 public class Test{public static void main(String[] args){int i = 1,sum = 0;for(;i <= 9;i++)sum += i;System.out.println(sum);}}1.7 public class Test{public static void main(String[] args){System.out.println(4*(1.0-1.0/3+1.0/5-1.0/7+1.0/9-1.0/11));System.out.println(4*(1.0-1.0/3+1.0/5-1.0/7+1.0/9-1.0/11+1.0/13)) ;}}1.8 public class Test{public static void main(String[] args){final double PI = 3.14;double radius = 5.5;System.out.println(2 * radius * PI);System.out.println(PI * radius * radius);}}1.9 public class Test{public static void main(String[] args){System.out.println(7.9 * 4.5);System.out.println(2 * (7.9 + 4.5));}}1.10 public class Test{public static void main(String[] args){double S = 14 / 1.6;double T = 45 * 60 + 30;double speed = S / T;System.out.println(speed);}}1.11public class Test{public static void main(String[] args){int BN = 312032486; //original person numbersdouble EveryYS,EveryYBP,EveryYDP,EveryYMP;EveryYS = 365 * 24 * 60 * 60;EveryYBP = EveryYS / 7;EveryYDP = EveryYS / 13;EveryYMP = EveryYS / 45;int FirstYP,SecondYP,ThirdYP,FourthYP,FivthYP;FirstYP = (int)(BN + EveryYBP + EveryYMP - EveryYDP);SecondYP = (int)(FirstYP + EveryYBP + EveryYMP - EveryYDP);ThirdYP = (int)(SecondYP + EveryYBP + EveryYMP - EveryYDP);FourthYP = (int)(ThirdYP + EveryYBP + EveryYMP - EveryYDP);FivthYP = (int)(FourthYP + EveryYBP + EveryYMP - EveryYDP);System.out.println(FirstYP);System.out.println(SecondYP);System.out.println(ThirdYP);System.out.println(FourthYP);System.out.println(FivthYP);}}1.12 public class Test{public static void main(String[] args){double S = 24 * 1.6;double T = (1 * 60 + 40) * 60 + 35;double speed = S / T;System.out.println(speed);}}1.13 import java.util.Scanner;public class Test{public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("input a,b,c,d,e,f value please:");double a = input.nextDouble();double b = input.nextDouble();double c = input.nextDouble();double d = input.nextDouble();double e = input.nextDouble();double f = input.nextDouble();double x,y;x = (e * d - b * f) / (a * d - b * c);y = (a * f - e * c) / (a * d - b * c);System.out.println("The result is x: "+(int)(x * 1000) / 1000.0);System.out.println("The result is y: "+(int)(y * 1000) / 1000.0);}}。

Java语言程序设计(基础篇)(第10版 梁勇著)第一章练习题答案

Java语言程序设计(基础篇)(第10版 梁勇著)第一章练习题答案

System.out.println("people of thirdYear = " + thirdYear); System.out.println("people of fourthYear = " + fourthYear); System.out.println("people of fifthYear = " + fifthYear); } }
// 第一章 P26 编程练习题1.1和1.2 (显示三条消息/显示五条消息) public class WelcomeWithThreeMessages { public static void main(String[] args) { System.out.println("Welcome to Java"); System.out.println("Welcome to Computer Science"); System.out.println("Programming is fun"); System.out.println("Welcome System.out.println("Welcome System.out.println("Welcome System.out.println("Welcome System.out.println("Welcome } } to to to to to Java"); Java"); Java"); Java"); Java");
// 第一章 P27 练习题1.10 (以英里计的平均速度) public class AverageSpeed { public static void main(String[] args) { // 45.5分钟等于45分钟30秒 double speedkm = 60 / (45.5 / 14); double speedm = speedkm / 1.6; // m/h代表英里/每小时 System.out.println("averagespeed = " + speedm + "m/h");

Java程序设计基础习题答案

Java程序设计基础习题答案

Java程序设计基础习题答案Java程序设计基础课后习题参考答案第2章1. 关于Java Application 的入口方法main()的检验:main()方法的参数名是否可以改变?main()方法的参数个数是否可以改变?该方法名是否可以改变?参考答案:(1)main()方法的参数名可以改变。

(2)main()方法的参数个数不可以改变。

(3)该方法名不可以改变。

2. 当一个程序没有main()方法时,能编译吗?如果能编译,能运行吗?参考答案:当一个程序没有main()方法是,是可以编译通过的,但是不能给运行,因为找不到一个主函数入口。

3. 下列语句能否编译通过?byte i = 127;byte j = 128;long l1 = 999999;long l2 = 9999999999;参考答案:byte i 和long l1可以编译通过。

而byte j 和long l2 超出自身数据类型范围,所以编译失败。

4. 下列语句能否编译通过?float f1 = 3.5;float f2 = 3.5f;参考答案:java中浮点型的数据在不声明的情况下都是double型的,如果要表示一个数据是float型的,必须在数据后面加上“F”或“f”;因此,float f1 无法编译通过。

5. 验证int 和char,int和double等类型是否可以相互转换。

参考答案:(1)char类型可以转换为int 类型的,但是int类型无法转换为char类型的;(2)int 可以转换为double类型的,但是double类型无法转换为int 类型的。

6. 计算下列表达式,注意观察运算符优先级规则。

若有表达式是非法表达式,则指出不合法之处且进行解释。

(1) 4+5 == 6*2 (2) (4=5)/6(3) 9%2*7/3>17 (4) (4+5)<=6/3(5) 4+5%3!=7-2 (6) 4+5/6>=10%2参考答案:表达式(2)为不合法表达式,只能将值赋值给一个变量,因此其中(4=5)将5赋值给4是不合法的。

Java语言程序设计课后习题答案全集

Java语言程序设计课后习题答案全集

J a v a语言程序设计课后习题答案全集Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】指出JAVA语言的主要特点和JAVA程序的执行过程。

答:(1)强类型;(2)编译和解释;(3)自动无用内存回收功能;(4)面向对象;(5)与平台无关;(6)安全性;(7)分布式计算;(8)多线程;程序执行过程如图所示:编写源文件,编译器编译源文件转换成字节码,解释器执行字节码。

说出开发与运行JAVA程序的重要步骤。

答:(1)编写源文件:使用一个文本编译器,如Edit或记事本,不可以使用Word.将编好的源文件保存起来,源文件的扩展名必须是.java;(2)编译Java源文件:使用Java编译器编译源文件得到字节码文件;(3)运行Java程序:Java程序分为两类——Java应用程序必须通过Java解释器来解释执行其字节码文件;Java小应用程序必须通过支持Java标准的浏览器来解释执行。

如何区分应用程序和小应用程序答:应用程序在与源文件名字相同的类中,有main()方法,该方法代表应用程序的入口; 小应用程序必须有一个Applet类的子类,该类称作主类,必须用public修饰。

说出JAVA源文件的命名规则。

答:源文件命名规则和类命名规则一样,所有的单词首字母都用大写字母,且必须和源文件的public类同名。

JAVA语言使用什么字符集共有多少个不同的字符答:Java语言使用Unicode字符集,共有65535个字符。

JAVA语言标识符的命名规则是什么(1)由字母(包括英文字母、下划线字符、美元字符、文字字符)和数字字符组成(2)限定标识符的第一个字符不能是数字字符(3)不能和关键字重名(4)长度不能超过255个字符JAVA有那些基本数据类型,它们的常量又是如何书写的指出下列内容哪些是JAVA语言的整型常量,哪些是浮点数类型常量,哪些两者都不是。

整型常量: 4)0xABCL,8)003,10)077,12)056L浮点数类型常量:3)-1E-31,5).32E31 13)0.,14).0两者都不是: 1),2),6),7),9),11)第二章 运算和语句Java 的字符能参加算术运算吗可以。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

7.7统计个位数的数目
public class DemoA {
public static void main(String[] args) {
int num[]=new int[100];
int counts[]=new int[10];
for (int i=0,n=0;i<100;i++){
num [i]=(int)(Math.random()*9);
counts[num[i]]++;
System.out.print(num[i]+"\t");
n++;
if (n%10==0){
System.out.println();
}
}System.out.println();
for (int j=0;j<10;j++){
System.out.print(j+"出现了"+counts[j]+"次\t");
}
}
7.27相同的数组
public class List {
public static void main(String[] args) {
int[] list1= new int[5];
int[] list2= new int[5];
Scanner in=new Scanner(System.in);
System.out.println("请输入第一个数组(5位):");
for (int i=0;i<5;i++) { list1[i] = in.nextInt(); }
System.out.println("请输入第二个数组(5位):");
for (int i=0;i<5;i++){ list2 [i]=in.nextInt(); }
equals(list1,list2);
}
public static boolean equals(int[] list1,int[] list2){
Arrays.sort(list1);
Arrays.sort(list2);
if (Arrays.equals(list1,list2)){ System.out.println("两数组相同"); }
else System.out.print("两数组不相同");
return false;
}
}
8.1求矩阵中各列数字的和
public class SumColumn {
public static void main(String[]args){
int columnIndex = 0;
Scanner input = new Scanner(System.in);
System.out.println("请输入一个3×4的数组:");
double[][]m=new double[3][4];
for(int i=0;i<m.length;i++)
for(int j=0;j<m[i].length;j++)
m[i][j]=input.nextDouble();
sumColumn(m,columnIndex);
}
public static double sumColumn(double[][]m,int columnIndex ){
for( ;columnIndex<m[0].length;columnIndex++ ){
double total=0;
for(int row=0;row<m.length;row++){
total+=m[row][columnIndex];
}
System.out.println("第" + (columnIndex+1)+ "列的和是"+total);
}return 0;
}
}
8.2求矩阵主对角线上的和
public class Text {
public static void main(String[]args){
int columnIndex = 0;
Scanner input = new Scanner(System.in);
System.out.println("请输入一个4×4的数组:");
double[][]m=new double[4][4];
for(int i=0;i<m.length;i++)
for(int j=0;j<m[i].length;j++)
m[i][j]=input.nextDouble();
sumColumn(m,columnIndex);
}
public static double sumColumn(double[][]m,int columnIndex ){ double sum1=0;
double sum2=0;
for( ;columnIndex<m[0].length;columnIndex++ ){
sum1+=m[columnIndex][columnIndex];
}
for(int i=0,j=3 ;i>4;i++,j-- ){
sum2+=m[i][j];
}
System.out.println("矩阵主对角线之和为:"+(sum1+sum2));
return 0;
}
}。

相关文档
最新文档