《Java语言程序设计:基础篇》课后复习题答案-第二十章

合集下载

java语言程序设计基础篇第十版课后答案

java语言程序设计基础篇第十版课后答案

第一章1.1public class Test{public static void main(String[]args){System.out.println("Welcome to Java!"); System.out.println("Welcome to Computer Science!");System.out.println("Progr amming is fun.");}}1.2public class Test{public static void main(String[]args){for(int i=0;i<=4;i++){System.out.println("Welcome to Java!");}}}1.3public class Test{public static void main(String[]args){System.out.println("]");System.out.printl n("]");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.4public class Test{public static void main(String[]args){System.out.println("a a^2a^3");System.out.println("111");System.out.println("248");System.out.println("3 927");System.out.println("41664");}}1.5public class Test{public static void main(String[]args){System.out.println((9.5*4.5-2.5*3)/(45.5-3.5) );}}1.6public class Test{public static void main(String[]args){int i=1,sum=0;for(;i<=9;i++)sum+ =i;System.out.println(sum);}1.7public 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.8public 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.9public class Test{public static void main(String[]args){System.out.println(7.9*4.5);System.out.p rintln(2*(7.9+4.5));}}1.10public 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 numbers double EveryYS,EveryYBP,EveryYDP,EveryYMP;EveryY S=365*24*60*60;EveryYBP=EveryYS/7;EveryYDP=EveryYS/13;Every YMP=EveryYS/45;int FirstYP,SecondYP,ThirdYP,FourthYP,FivthYP;FirstYP=(int)(BN+EveryYBP+EveryYMP-EveryYDP);SecondYP=(int)(FirstYP +EveryYBP+EveryYMP-EveryYDP);ThirdYP=(int)(SecondYP+EveryYBP+Ev eryYMP-EveryYDP);FourthYP=(int)(ThirdYP+EveryYBP+EveryYMP-EveryYD P);FivthYP=(int)(FourthYP+EveryYBP+EveryYMP-EveryYDP);System.out.pri ntln(FirstYP);System.out.println(SecondYP);System.out.println(ThirdYP);Syste m.out.println(FourthYP);System.out.println(FivthYP);}}1.12public 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(sp eed);}}1.13import java.util.Scanner;public class Test{public static void main(String[]args){Scanner input=new Scan ner(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();第二章package cn.Testcx;import java.util.Scanner;public class lesson2{public static void main(String[]args){@SuppressWarnings("resource")Scanner in put=new Scanner(System.in);System.out.print("请输入一个摄氏温度:");double Celsius=input.nextDouble();double Fahrenheit=(9.0/5)*Celsius+3 2;System.out.println("摄氏温度:"+Celsius+"度"+"转换成华氏温度为:"+Fahrenheit+"度");System.out.print("请输入圆柱的半径和高:");double radius=input.nextDouble();int higth=input.nextInt();double are as=radius*radius*Math.PI;double volume=areas*higth;System.out.println("圆柱体的面积为:"+areas);System.out.println("圆柱体的体积为:"+volume);System.out.print("输入英尺数:");double feet=input.nextDouble();double meters=feet*0.305;System.out.print ln(feet+"英尺转换成米:"+meters);System.out.print("输入一个磅数:");double pounds=input.nextDouble();double kilograms=pounds*0.454;Syste m.out.println(pounds+"磅转换成千克为:"+kilograms);System.out.println("输入分钟数:");long minutes=input.nextInt();long years=minutes/(24*60*365);long days=(minutes%(24*60*365))/(24*60);System.out.println(minutes+"分钟"+"有"+years+"年和"+days+"天");long totalCurrentTimeMillis=System.currentTimeMillis();long totalSeconds=t otalCurrentTimeMillis/1000;long currentSeconds=totalSeconds%60;long totalM inutes=totalSeconds/60;long currentMinutes=(totalSeconds%(60*60))/60;long currenthours=(totalMinutes/60)%24;System.out.print("输入时区偏移量:");byte zoneOffset=input.nextByte();long currentHour=(currenthours+(zoneOf fset*1))%24;System.out.println("当期时区的时间为:"+currentHour+"时"+currentMinutes+"分"+currentSeconds+"秒");System.out.print("请输入v0,v1,t:");double v0=input.nextDouble();double v1=input.nextDouble();doublet=input.nextDouble();float a=(float)((v1-v0)/t);System.out.println("平均加速度a="+a);System.out.println("输入水的重量、初始温度、最终温度:");double water=input.nextDouble();double initialTemperature=input.nextDou ble();double finalTemperature=input.nextDouble();double Q=water*(finalTemp erature-initialTemperature)*4184;System.out.println("所需热量为:"+Q);System.out.print("输入年数:");int numbers=input.nextInt();long oneYearsSecond=365*24*60*60;Longpop ulation=(long)((312032486+((oneYearsSecond/7.0)+(oneYearsSecond/45.0)-(oneYearsSecond/13.0))*numbers));System.out.println("第"+numbers+"年后人口总数为:"+population);System.out.print("输入速度单位m/s和加速度a单位m/s2:");double v=input.nextDouble();double a1=input.nextDouble();double l engthOfAirplane=(Math.pow(v,2))/(2*a1);System.out.println("最短长度为:"+lengthOfAirplane);System.out.print("输入存入的钱:");double money=input.nextInt();double monthRate=5.0/1200;for(int i=1;i<7; i++){double total=money*(Math.pow(1+monthRate,i));System.out.println("第"+i+"个月的钱为:"+total);//告诉我书上的银行在哪里,我要去存钱,半年本金直接翻6倍、、、}System.out.print("用户请输入身高(英寸)、体重(磅):");double height=input.nextDouble();double weight=input.nextDouble(); double BMI=(weight*0.45359237)/(Math.pow((height*0.0254),2));System.out.println("BMI的值为"+BMI);System.out.print("输入x1和y1:");System.out.print("输入x2和y2:");double x1=input.nextDouble();double y1=input.nextDouble();double x2 =input.nextDouble();double y2=input.nextDouble();double point1=Math.pow((x2-x1),2);double point2=Math.pow((y2-y1),2);double distance=Math.pow((point1+point2),(1.0/2));//也可以Math.pow((point1+point2),0.5)System.out.println("两点间的距离为:"+distance);System.out.print("输入六边形的边长:");double side=input.nextDouble();double area=(3*(Math.pow(3,0.5))*(Math.p ow(side,2)))/2;System.out.println("六边形的面积为:"+area);}}。

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程序设计》课后习题参考答案

《Java程序设计》课后习题参考答案

高等院校计算机基础教育规划教材《Java 程序设计》课后习题参考答案――武汉大学出版社习题1参考答案1.Java语言的特点有哪些?答:参考1.1.2防止直接访问数据变量看起来有些奇怪,但它实际上却对使用类的程序质量有极大的好处。

既然数据的单个项是不可访问的,那么惟一的办法就是通过方法来读或写。

因此,如果要求类成员内部的一致性,就应该通过类本身的方法来处理。

这种数据隐藏技术就是面向对象的重要特性——封装。

它将类的外部界面与类功能的实现区分开来,隐藏实现细节,(通过公共方法)保留有限的对外接口,迫使用户使用外部界面,通过访问接口实现对数据的操作。

即使实现细节发生了改变,还可通过界面承担其功能而保留原样,确保调用它的代码还继续工作,这使代码维护更简单。

2.简述封装的优点。

答:封装是一个简单而有效的思想,优点有:(1)模块化,对内成为一个结构完整、可进行自我管理、自我平衡、高度集中的整体。

(2)信息隐蔽,对外则是一个功能明确、接口单一、可在各种适合的环境下都能独立工作的有机单元。

面向对象的程序设计实现了对象的封装,使得用户不必关心诸如对象的行为是如何实现的这样一些细节。

通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理。

类的封装性使得代码的可重用性大为提高,这样的有机单元特别适合构建大型标准化的软件系统,具有很高的开发效率。

3.Java的基本工具有哪些?(1)javac 编译器(2)java 解释器(3)jdb Java 语言调试器(4)javadoc API文档管理器(5)javah 头文件生成器(6)appletviewer 小应用程序浏览器(7)javap 类文件反汇编器4.Java开发环境是如何配置的?答:对于Windows 2000以上版本的操作系统,可以打开[控制面板]窗口,双击其中的[系统]图标,在[系统特性]窗口中单击[高级]选项卡,进而单击[环境变量]按钮。

Java程序设计基础习题答案

Java程序设计基础习题答案

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

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

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

3、下列语句能否编译通过?bytei =127;bytej = 128;longl1 = 999999;long l2= 9999999999;参考答案:byte i 与long l1可以编译通过。

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

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

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就是不合法得.7、下列()就是合法得Java标识符。

《Java基础入门》课后章节习题及答案(完整版)

《Java基础入门》课后章节习题及答案(完整版)

《Java基础入门》课后章节习题及答案(完整版)《Java基础入门》课后习题第1章Java开发入门一、填空题1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。

2、Java程序的运行环境简称之为JRE_____。

3、编译Java程序需要使用_javac_____命令。

4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下。

5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“.class”文件路径。

二、选择题1、以下选项中,哪些属于JDK工具?(多选)ABCDA、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具2、Java属于以下哪种语言?CA、机器语言B、汇编语言C、高级语言D、以上都不对3、下面哪种类型的文件可以在Java虚拟机中运行?DA、.javaB、.jreC、.exeD、.class4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?BA、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?B A.d:\jdk; B.d :\jdk\bin; C.d:\jre\bin; D.d:\jre;三、问答题1、简述Java的特点。

面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。

2、简述JRE与JDK的区别。

JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。

java语言程序设计基础篇第八版复习题答案

java语言程序设计基础篇第八版复习题答案

java语言程序设计基础篇第八版复习题答案Java语言程序设计基础篇第八版复习题答案# 开始语复习题是检验学习效果的重要手段,以下是针对《Java语言程序设计基础篇第八版》的一些复习题答案,旨在帮助同学们巩固和检验所学知识。

# 复习题及答案1. 简述Java语言的特点。

答案:Java是一种面向对象的编程语言,具有跨平台性、安全性、健壮性、多线程等特点。

它通过Java虚拟机(JVM)实现“一次编写,到处运行”的口号。

2. 什么是面向对象编程(OOP)?答案:面向对象编程是一种编程范式,它使用“对象”来设计软件,这些对象可以包含数据(属性)和代码(方法)。

OOP的核心概念包括封装、继承和多态。

3. 解释Java中的封装、继承和多态。

答案:- 封装:隐藏对象的内部状态和实现细节,只暴露有限的操作界面。

- 继承:允许一个类(子类)继承另一个类(父类)的属性和方法。

- 多态:允许不同类的对象对同一消息做出响应,但具体的行为会根据对象的实际类型而有所不同。

4. 描述Java中的基本数据类型及其范围。

答案:Java中的基本数据类型包括:- `byte`:8位有符号整数,范围从 -128 到 127。

- `short`:16位有符号整数,范围从 -32,768 到 32,767。

- `int`:32位有符号整数,默认类型,范围从 -2^31 到 2^31-1。

- `long`:64位有符号整数,范围从 -2^63 到 2^63-1,必须以 L 或l 结尾。

- `float`:32位单精度浮点数。

- `double`:64位双精度浮点数,默认浮点数类型。

- `char`:16位Unicode字符。

- `boolean`:只有两个可能的值:true 和 false。

- `void`:表示没有任何值。

5. 什么是Java的自动装箱和拆箱?答案:自动装箱是Java自动将基本数据类型转换为对应的包装类的过程,例如将`int`转换为`Integer`。

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语言程序设计(基础篇)答案

JAVA语言程序设计(基础篇)答案

3.4import javax.swing.*;public class AdditionTutor{public static void main(String[] args){int number1=(int)(System.currentTimeMillis()%100);int number2=(int)(System.currentTimeMillis()*5%100);String answerString=JOptionPane.showInputDialog("what is "+ number1 +"+ "+ number2+" ?");int answer=Integer.parseInt(answerString);JOptionPane.showMessageDialog(null,number1 +" + "+ number2 +" = "+answer+" is "+(number1+number2==answer));}}3.10import javax.swing.JOptionPane;public class ComputeTaxWithSelectionStatement{public static void main(String[] args){//Prompt the user to enter filing statusString statusString = JOptionPane.showInputDialog("Enter the filing status:\n"+"(0-single filer,1-married jointly,\n"+"2-married separately,3-head of household)");int status = Integer.parseInt(statusString);//Prompt the user to enter taxable incomeString incomeString = JOptionPane.showInputDialog("Enter the taxable income:");double income = Double.parseDouble(incomeString);//Comput taxdouble tax=0;if (status == 0){//Compute tax for single filersif (income <= 6000)tax = income * 0.10;else if (income <= 27950)tax = 6000 * 0.10 + (income - 6000) * 0.15;else if (income <= 67700)tax = 6000 * 0.10 + (27950 - 6000) * 0.15 +(income - 27950) * 0.27;else if (income <= 141250)tax = 6000 * 0.10 + (27950 - 6000) * 0.15 +(67700 - 27950) * 0.27 + (income - 67700) * 0.30;else if (income <=307050)tax = 6000 * 0.10 + (27950 - 6000) * 0.15 +(67700 - 27950) * 0.27 + (141250 - 67700) * 0.30 +(income - 141250) * 0.35;elsetax = 6000 * 0.10 + (27950 - 6000) * 0.15 +(67700 - 27950) * 0.27 + (141250 -67700) * 0.30 +(307050 - 141250) * 0.35 + (income - 307050) * 0.386;}else if (status == 1){//Compute tax for married file jointly if (income <= 12000)tax = income * 0.10;else if (income <= 46700)tax = 12000 * 0.10 + (income - 12000) * 0.15;else if (income <= 112850)tax = 12000 * 0.10 + (46700 - 12000) * 0.15 +(income - 46700) * 0.27;else if (income <= 171950)tax = 12000 * 0.10 + (46700 - 12000) * 0.15 +(112850 - 46700) * 0.27 + (income - 112850) * 0.30;else if (income <= 307050)tax = 12000 * 0.10 + (46700 - 12000) * 0.15 +(112850 - 46700) * 0.27 + (141250 - 112850) * 0.30 +(income - 307050) * 0.35;elsetax = 12000 * 0.10 + (46700 - 12000) * 0.15 +(112850 - 46700 ) * 0.27 + (171950 - 112850) * 0.30 +(307050 - 171950) * 0.35 + (income - 307050) * 0.386;}else if (status == 2){//Compute tax for married separately if (income <= 6000)tax = income * 0.10;else if (income <= 23350)tax = 6000 * 0.10 + (income - 6000) * 0.15;else if (income <= 56425)tax = 6000 * 0.10 + (23350 - 6000) * 0.15 +(income - 23350) * 0.27;else if (income <= 85975)tax = 6000 * 0.10 + (23350 - 6000) * 0.15 +(56425 - 23350) * 0.27 + (income - 56425) * 0.30;else if (income <= 153525)tax = 6000 * 0.10 + (23350 - 6000) * 0.15 +(56425 - 23350) * 0.27 + (85975 - 56425) * 0.30 +(income - 85975) * 0.35;elsetax = 6000 * 0.10 + (23350 - 6000) * 0.15 +(56425 - 23350) * 0.27 + (85975 - 56425) * 0.30 +(153525 - 85975) * 0.35 + (income - 153525) * 0.386;}else if (status == 3){//Compute tax for head of householdif (income <= 10000)tax = income * 0.10;else if (income <= 37450)tax = 10000 * 0.10 + (income - 10000) * 0.15;else if (income <= 96700)tax = 10000 * 0.10 + (37450 - 10000) * 0.15 +(income - 37450) * 0.27;else if (income <= 156600)tax = 10000 * 0.10 + (37450 - 10000) * 0.15 +(96700 - 37450) * 0.27 + (income - 96700) * 0.30;else if (income <= 307050)tax = 10000 * 0.10 + (37450 - 10000) * 0.15 +(96700 - 37450) * 0.27 + (156600 - 96700) * 0.30 +(income - 156600) * 0.35;elsetax = 10000 * 0.10 + (37450 - 10000) * 0.15 +(96700 - 37450) * 0.27 + (156600 - 96700) * 0.30 +(307050 - 156600) * 0.35 + (income - 307050) * 0.386;}else{System.out.println("Error: invalid status");System.exit(0);}//Display the resultJOptionPane.showMessageDialog(null,"Tax is " +(int)(tax * 100) / 100.0);}}4.11public class ZhengChu{public static void main(String[] args){int count=0;for(int i=100;i<=200;i++){if((i%5==0||i%6==0)&&i%30!=0){System.out.print(" "+ i);count++;if(count%10==0)System.out.println();}}}}4.14public class ASCII{public static void main(String[] args){int count = 0;for(int i = 33; i <= 126; i++){count++;char ch = (char)i;System.out.print(" " + ch);if(count % 10 == 0)System.out.println();}}}4.17import javax.swing.JOptionPane;public class FindSalesAmount{/**Main method*/public static void main(String[] args){//The commission soughtString COMMISSION_SOUGHTString = JOptionPane.showInputDialog("Enter the COMMISSION_SOUGHT :");double COMMISSION_SOUGHT = Double.parseDouble(COMMISSION_SOUGHTString);double commission = 0;double salesAmount;for (salesAmount = 0.01;commission <= COMMISSION_SOUGHT;){salesAmount += 0.01; //防止犯off-by-one错误,先判断在做自加!if (salesAmount >= 10000.01)commission =5000 * 0.08 + 5000 * 0.1 + (salesAmount - 10000) * 0.12;else if (salesAmount >= 5000.01)commission = 5000 * 0.08 + (salesAmount - 5000) * 0.10;elsecommission = salesAmount * 0.08;}String output ="The sales amount $" + (int)(salesAmount * 100) / 100.0 +"\n is needed to make a commission of $" + COMMISSION_SOUGHT;JOptionPane.showMessageDialog(null,output);}}5.6import javax.swing.JOptionPane;public class PrintPyramid{public static void main(String[] args){String input = JOptionPane.showInputDialog("Enter the number of lines:");int numberOfLines = Integer.parseInt(input);displayPattern(numberOfLines);}public static void displayPattern(int n){for (int row = 1;row <= n;row++){for (int column = 1;column <= n - row;column++)System.out.print(" ");for (int num = row;num >= 1;num--)System.out.print((num >= 10) ? " " + num : " " + num);System.out.println();}}}5.18public class MathSuanFa{public static void main(String[] args){double A = Math.sqrt(4);double B = (int)Math.sin(2 * Math.PI);double C = (int)Math.cos(2 * Math.PI);double D = (int)Math.pow(2, 2);double E = (int)Math.log(Math.E);double F = (int)(Math.exp(1)*100000)/100000.0;double G = (int)Math.max(2, Math.min(3, 4));double H = (int)Math.rint(-2.5);double I = (int)Math.ceil(-2.5);double J = (int)Math.floor(-2.5);int K = (int)Math.round(-2.5f);int L = (int)Math.round(-2.5);double M = (int)Math.rint(2.5);double N = (int)Math.ceil(2.5);double O = (int)Math.floor(2.5);int P = (int)Math.round(2.5f);int Q = (int)Math.round(2.5);int R = (int)Math.round(Math.abs(-2.5));System.out.println(A +" "+ B +" "+ C +" "+ D +" "+ E +" "+ F +" "+ G +" "+ H +" "+ I +" "+ J +" "+ K +" "+ L +" "+ M +" "+ N +" "+ O +" "+ P +" "+ Q +" "+ R);}}6.9import javax.swing.JOptionPane;public class Array{public static void main (String[] args){String incomeString = JOptionPane.showInputDialog("Enter the number of array size:");int income = Integer.parseInt(incomeString);int arraySize = income;int [] myList = new int [arraySize];int m;for ( m = 0; m < arraySize; m++){String elementString = JOptionPane.showInputDialog("Enter the " + (m + 1) + " element of the array");int element = Integer.parseInt(elementString);myList[m] = element;}int minElement = myList[0];for (int i=1; i < arraySize; i++){if (myList[i] < minElement)minElement = myList[i];}JOptionPane.showMessageDialog(null,"The min element is: " + minElement); }}。

Java语言程序设计基础篇全习题答案1

Java语言程序设计基础篇全习题答案1

1. 2. 3. 4.Chapter 1 Introduction to Computers, Programs, and Java A computer is an electronic device that stores and processes data. A computerincludes both hardware and software. In general, hardware is the physical aspect of the computer that can be seen, and software is the invisible instructions that control the hardware and make it work. The hardware of a computer consists of a CPU,cache, memory, hard disk, floppy disk, monitor, printer, and communication devices. The machine language is a set of primitive instructions built into every computer. Assembly language is a low-level programming language in which a mnemonic is used to represent each of the machine language instructions. The high-level languages are English-like and easy to learn and program.The operating system (OS) is a program that manages and controls a computer’s activities. The examples of OS are Windows 98, NT, 2000, XP, or ME. Windows. Application programs such as an Internet browser and a word processor run on top of an operating system.100 in decimal => 64 in hex100 in decimal => 01100100 in binary4340 in decimal => 10F4 in hex4340 in decimal => 1000011110100 in binary2000 in decimal => 7D0 in hex2000 in decimal => 111110100005.1000011001 in binary => 219 in hex1000011001 in binary => 537 in decimal100000000 in binary => 100 in hex 100000000 in binary => 256 in decimal100111 in binary => 27 in hex 100111 in binary => 39 in decimal 6.FEFA9 in hex => 1044393 in decimalFEFA9 in hex => 11111110111110101001 in binary93 in hex => 147 in decimal 93 in hex => 10010011 in binary 2000 in hex => 8192 in decimal7.8.9.10.11.12.13.14.16.17. 2000 in hex => 10000000000000 in binaryDeveloped by a team led by James Gosling at Sun Microsystems in 1991. Originally called Oak, it became Java in 1995 when it was redesigned for developing Internet applications.Java can run on any platform with a Java Virtual Machine. The minimum requirement is the Java Runtime Environment, free from the .The input is the Java source code and the output is the Java bytecode (if compiled successfully).JBuilder by Borland, Sun ONE Studio by Sun, Café by WebGain, Visual Age for Java by IBM are the tools for developing Java programs, not dialects of Java. These tools make developing Java programs easier and more productive.HTML is a markup language for displaying static Web pages. Java is a full-fledged programming language that can be used to develop dynamic Web pages. The Java programs that run from a Web browser are called applets. Java applets must be embedded in HTML files using the <applet> tag.Keywords have specific meaning to the compiler and cannot be used for other purposes in the program such as variables or method names. Examples of keywords are class, static, and void.Java source code is case sensitive. Java keywords are always in lowercase.The source file extension is .java and the bytecode file extension is .class. Comments are used to document what a program is for and how a program is constructed. Comments help the programmers or users to communicate and understand the program. Comments are not programming statements and are ignored by the compiler. In Java, comments are preceded by two forward slashes (//) in a line or enclosed between /* and */ in multiple lines. When the compiler sees //, it ignores all text after // in the same line. When it sees /*, it scans for the next */ and ignores any text between /* and */.15. System.out.println(...);JOptionPane.showMessageDialog(null,“Hello world”);Line 2. Main should be main.Line 2. static is missing.Line 3: Welcome to Java! should be enclosed inside double quotation marks.javac is the JDK command to compile a program program. java is the JDK command to run a program.18.19. Java interpreter cannot find the .class file. Make sure you placed the .class in the right place, and invoked java command with appropriate package name.The class does not have a main method, or the signature of the main method is incorrect.Thank you for evaluating AdreamSoft PDF to Word You can only convert 3 pages with the trial versionTo get all the pages converted, you need to purchase the software from/purchase/buy-pdf-to-word.html。

Java语言程序设计基础教程习题解答

Java语言程序设计基础教程习题解答

《Java语言程序设计基础教程》练习思考题参考答案第1章Java程序设计概述1.9 练习思考题1、Java运行平台包括三个版本,请选择正确的三项:()A. J2EEB. J2MEC. J2SED. J2E解答:A,B,C2、Java JDK中反编译工具是:()A. javacB. javaC. jdbD.javap解答:D3、public static void main方法的参数描述是:()A. String args[]B. String[] argsC. Strings args[]D. String args解答:A,B4、在Java中,关于CLASSPATH环境变量的说法不正确的是:()A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。

B. 编译器用它来搜索各自的类文件。

C. CLASSPATH是一个目录列表。

D. 解释器用它来搜索各自的类文件。

解答:A5、编译Java Application源文件将产生相应的字节码文件,扩展名为()A. .javaB. .classC. .htmlD. .exe解答:B6、开发及运行Java程序需要经过的三个主要步骤为____________、____________和____________。

7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。

8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名及类名相同而扩展名为______的字节码文件。

9、开发及运行Java程序需要经过哪些主要步骤和过程?10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的?11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

Java语言程序设计基础篇前三章课后习题

Java语言程序设计基础篇前三章课后习题

第1章计算机、程序和Java概述1.1(显示三条消息)编写程序,显示Welcome to Java、Welcome to Computer Science和Programming is fun。

程序:显示:1.2(显示五条消息)编写程序,显示Welcome to Java五次程序:显示:1.3(显示图案)编写一个程序,显示下面的图案:程序:显示:1.4(打印表格)编写程序,显示以下表格:程序:显示:1.5(计算表达式)编写程序,显示(9.5x4.5-2.5x3)/(45.5-3.5)的结果程序:显示:1.6(数列求和)编写程序,显示1+2+3+4+5+6+7+8+9的结果程序:显示:1.7(近似求π)可以使用以下公式计算π:Π=4x(1-1/3+1/5-1/7+1/9-1/11+1/13+...)编写程序,显示4x(1-1/3+1/5-1/7+1/9-1/11+1/13...)的结果。

在程序中用1.0代替1 程序:显示:第2章基本程序设计2.1(将摄氏温度转换为华氏温度)编写程序,从控制台读入double型的摄氏温度,然后将其转换华氏温度,并显示结果。

转换公式如下所示:Fahrenheit-=(9/5)*celsius+32 (华氏度=(9/5)*摄氏度+32)程序:显示:2.2(计算圆柱体的体积)编写程序,读入圆柱体的半径和高,并使用下列公式计算圆柱体的体积面积=半径x半径xπ体积=面积x高程序:显示:2.3(将英尺转换为米)编写程序,读入英尺数,将其转换为米数并显示结果。

一英尺等于0.305米。

程序:显示:2.4(将磅转换为千克)编写程序,将磅数转换为千克数。

程序提示用户输入磅数,然后转换成千克并显示结果。

1磅等于0.454千克。

程序:显示:2.5(财务应用程序:计算小费)编写一个程序,读入一笔费用与酬金率,就算酬金和总钱数。

例如,如果用户读入10作为费用,15%作为酬金率,计算结果显示酬金为$1.5,总费用为$11.5.程序:显示:2.6(求一个整数各位数的和)编写程序,读取一个在0和1000之间的整数,并将该整数的各位数字相加。

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

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

J a v a语言程序设计课后习题+答案(总142页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除第一章课后习题1.编译Java程序的命令是什么2.执行Java程序的命令是什么应用程序和小程序的区别是什么4.编写一个application ,实现在屏幕上打印自己名字的功能。

第一章课后习题答案1.编译Java程序的命令是什么答案:javac 源文件名2.执行Java程序的命令是什么java 主类名应用程序和小程序的区别是什么Java application由Java解释器独立运行字节码由专门的命令行启动程序执行程序中有定义了main()方法的主类Java applet不能独立运行,字节码必须嵌入HTML文档当浏览器调用含applet的Web页面时执行程序中含有java. applet. Applet 类的子类4.编写一个application ,实现在屏幕上打印自己名字的功能。

class Test{public static void main(String[] args){张三”);}}第二章课后习题(1)一、选择题1.下列变量定义错误的是。

A) int a; B) double b=; C) boolean b=true; D)float f=;2.下列数据类型的精度由高到低的顺序是:a)float,double,int,longb)double,float,int,bytec)byte,long,double,floatd)double,int,float,long3.执行完下列代码后,int a=3;char b='5';char c=(char)(a+b);c的值是A)’8’ b)53 c)8 d)56是一种_____________A) 数据类型 B)java包 C)字符编码 D)java类+5%3+2的值是___________A)2 B)1 C) 9 D)106.下面的逻辑表达式中合法的是__________A)(7+8)&&(9-5) B)(9*5)||(9*7) C)9>6&&8<10 D)(9%4)&&(8*3)语言中,占用32位存储空间的是__________。

Java语言程序设计基础篇课后答案-机械工业出版社[资料]

Java语言程序设计基础篇课后答案-机械工业出版社[资料]

Java语言程序设计基础篇课后答案-机械工业出版社Java语言程序设计1 / 81&[编程练习题答案]Java语言程序设计(基础篇)(进阶篇)第13、14、15、24、25、26、28、29、30、31章部分习题答案,奇数题和部分双数题是我自己做的,在此和大家分享(^_^~Chapter 13 Exercise 13.2 / 13.8 / 13.11import javax.swing.*;import java.awt.*;public class Exercise13_2 extends JFrame {// Create two buttonsprivate OvalButton jbtOk = new OvalButton("OK");private OvalButton jbtCancel = new OvalButton("Cancel");/** Default constructor */public Exercise13_2() {// Set the window titlesetTitle("Exercise13_2");// Set FlowLayout manager to arrange the componentsJava语言程序设计2 / 81// inside the framegetContentPane().setLayout(new FlowLayout());// Add buttons to the framegetContentPane().add(jbtOk);getContentPane().add(jbtCancel);}/** Main method */public static void main(String[] args) {Exercise13_2 frame = new Exercise13_2();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setVisible(true);}}class OvalButton extends JButton {public OvalButton() {}public OvalButton(String text) {super(text);}protected void paintComponent(Graphics g) {// Draw an ovalsuper.paintComponent(g);g.drawOval(5, 5, getWidth() - 10, getHeight() - 10); }/** Override get method for preferredSize */public Dimension getPreferredSize() {return new Dimension(100, 50);}/** Override get method for minimumSize */public Dimension getMinimumSize() {return new Dimension(100, 50);}}Java语言程序设计3 / 81import java.awt.*;import javax.swing.*;public class Exercise13_8 extends JFrame {public static void main(String[] args) {JFrame frame = new Exercise13_8();frame.setSize(300, 300);frame.setTitle("Exercise13_8");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}public Exercise13_8() {getContentPane().add(new OctagonPanel());}}class OctagonPanel extends JPanel {protected void paintComponent(Graphics g) {super.paintComponent(g);int xCenter = getWidth() / 2;int yCenter = getHeight() / 2;int radius =(int) (Math.min(getWidth(), getHeight()) * 0.4);// Create a Polygon objectPolygon polygon = new Polygon();// Add points to the polygonpolygon.addPoint(xCenter + radius, yCenter);polygon.addPoint((int)(xCenter + radius * Math.cos(2 *Math.PI / 8)),(int)(yCenter - radius * Math.sin(2 * Math.PI / 8)));polygon.addPoint((int)(xCenter + radius * Math.cos(2 * 2 * Math.PIJava语言程序设计4 / 81/ 8)),(int)(yCenter - radius * Math.sin(2 * 2 * Math.PI / 8)));polygon.addPoint((int)(xCenter + radius * Math.cos(3 * 2 * Math.PI/ 8)),(int)(yCenter - radius * Math.sin(3 * 2 * Math.PI / 8)));polygon.addPoint((int)(xCenter + radius * Math.cos(4 * 2 * Math.PI/ 8)),(int)(yCenter - radius * Math.sin(4 * 2 * Math.PI / 8)));polygon.addPoint((int)(xCenter + radius * Math.cos(5 * 2 * Math.PI/ 8)),(int)(yCenter - radius * Math.sin(5 * 2 * Math.PI / 8)));polygon.addPoint((int)(xCenter + radius * Math.cos(6 * 2 * Math.PI/ 8)),(int)(yCenter - radius * Math.sin(6 * 2 * Math.PI / 8))); polygon.addPoint((int)(xCenter + radius * Math.cos(7 * 2* Math.PI/ 8)),(int)(yCenter - radius * Math.sin(7 * 2 * Math.PI / 8)));// Draw the polygong.drawPolygon(polygon);}}import javax.swing.*;import java.awt.*;public class Exercise13_11 extends JFrame {public Exercise13_11(){add(new SquareFunction());}/*** @param args*/public static void main(String[] args) {Java语言程序设计5 / 81// TODO 自动生成方法存根Exercise13_11 frame = new Exercise13_11();frame.setTitle("Exercise13.11");frame.setSize(300,200);frame.setLocationRelativeTo(null);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}}class SquareFunction extends JPanel {public SquareFunction(){}protected void paintComponent(Graphics g){super.paintComponent(g);g.drawLine(10, this.getHeight()-20, this.getWidth()-10,this.getHeight()-20);g.drawLine(this.getWidth()-30, this.getHeight()-15,this.getWidth()-10, this.getHeight()-20);g.drawLine(this.getWidth()-30, this.getHeight()-25,this.getWidth()-10, this.getHeight()-20);g.drawString("X", this.getWidth()-10,this.getHeight()-30);g.drawLine(this.getWidth()/2, 20, this.getWidth()/2,this.getHeight()-5);g.drawLine(this.getWidth()/2, 20, this.getWidth()/2-5,35);g.drawLine(this.getWidth()/2, 20, this.getWidth()/2+5,35);g.drawString("Y", this.getWidth()/2 + 10, 30);Polygon p = new Polygon();double scaleFactor = 0.01;for (int x=-100; x<=100; x++){p.addPoint(x+this.getWidth()/2,this.getHeight()-20-(int)(scaleFactor*x*x));}g.drawPolyline(p.xpoints, p.ypoints, p.npoints);}}Java语言程序设计6 / 81Chapter 14 Exercise 14.4 / 14.8 / 14.9package chapter14;import javax.swing.*;import java.awt.event.*;import java.awt.*;public class Exercise14_4 extends JFrame {public Exercise14_4(){MousePosition p = new MousePosition();add(p);}/*** @param args*/public static void main(String[] args) {// TODO 自动生成方法存根Exercise14_4 frame = new Exercise14_4();frame.setTitle("Exercise14.4");frame.setSize(300, 200);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setLocationRelativeTo(null);frame.setVisible(true);}static class MousePosi。

答案JAVA程序设计基础(复习提纲及练习题

答案JAVA程序设计基础(复习提纲及练习题

复习....参考考试题型:1.单项选择题(本大题共15小题,每小题1分,共15分)2. 判断题(10小题,每小题1分,共10分)3.填空题(本大题共10空,每个空2分,共20分)4.阅读程序,写出程序运行后的输出结果(本大题共3小题,每小题6分,共18分)5. 编程题(本大题共3小题,共37分),其中第1题:9分(位操作),第2题14(分排序或字符串处理),第3题14分(类与对象)。

涉及数组、排序、字符串处理、类和对象(实例)、位操作(手写推算步骤及最终结果,要求看样题)等。

考试涉及的相关知识点:1.java程序类型:(1)java application(需主类)、java程序、源程序、类、接口、字节码文件、包、JDK JVM javac.exe java.exe跨平台java开发步骤一二维数组等(2)java applet:java小程序(可以没有主类,是图形界面),主要用于网页(3)java script:网页或网站的“脚本”程序2.标识符和关键字:class、interface final abstract static void byte short int long float double boolean String return 异常常用的关键字(try catch finally throw throws)3.表达式:=比较运算符:> >= < <= != ==逻辑运算符:&& || !位运算符:& |~ ^ >> >>> <<instanceof ++ -- 前后关系?:算合语句s+=5 s-=5 s*=5 s/=5 int a=b=10;4.程序控制结构:顺序、选择、循环(1)单路选择结构if(){ }(2)多路选择结构if( ) {.. else ..}(3)else if 结构(4)switch (break);while(){ … }do{ …. } while( ); break continuefor( ; ; ){ … }5.面向对象的程序设计:类:class 成员变量方法成员修饰符(访问、特征)static变量成员或方法实例变量成员或方法UML图对象:Object 创造对象new方法:void 方法、非void 方法、static 方法(类方法)、非static 方法(实例方法)方法参数传递:实参形参传值传引用(数组对象接口)多态:重载重写this 、super构造方法(在类的继承中可能用到的关键字super)包:关键字import 、package继承(组合:主类main() 与继承):继承创新改造子类不能降低父类的访问级别Super、this 、上转型对象Abstract、final接口:interface(1)实现:implements 也是一种继承(包括一般类与抽象类,多实现)(2)继承:extends (与类相比的“多继承”)(3)静态块(静态初始化器) static { …}、构造块{…}、构造方法以及在类的继承和实例生成中的相互关系和执行顺序。

java语言程序设计基础篇复习题答案

java语言程序设计基础篇复习题答案

java语言程序设计基础篇复习题答案
Java语言程序设计基础篇复习题答案
在学习Java语言程序设计基础时,复习题是一个非常重要的环节。

通过复习题的练习,可以帮助我们巩固知识,加深对Java语言程序设计基础的理解。

下面是一些常见的Java语言程序设计基础篇复习题答案,供大家参考。

1. 什么是Java语言的特点?
答:Java语言的特点包括跨平台性、面向对象、健壮性、安全性、简单性、多线程、动态性和高性能等。

2. 什么是Java的基本数据类型?
答:Java的基本数据类型包括整型、浮点型、字符型、布尔型四种基本类型,分别为int、float、char、boolean。

3. 什么是Java的面向对象编程?
答:Java的面向对象编程是一种程序设计思想,它将现实世界中的事物抽象成对象,并通过对象之间的交互来实现程序的功能。

4. 什么是Java的类和对象?
答:Java的类是一种抽象的数据类型,它是对象的模板,用来描述对象的属性和行为。

而对象是类的实例,它具体表现了类的特征。

5. 什么是Java的封装、继承和多态?
答:Java的封装是一种将数据和行为封装在类中,隐藏内部的实现细节,只对外提供接口的机制。

继承是一种通过创建新类来扩展已有类的属性和行为的机制。

多态是一种同一操作作用于不同的对象上,可以有不同的解释和不同的实现的机制。

通过对这些复习题的回答,我们可以加深对Java语言程序设计基础的理解,为进一步的学习和实践打下坚实的基础。

希望大家在学习Java语言程序设计基础时,能够认真对待复习题,不断提升自己的编程能力。

Java程序设计课后练习答案

Java程序设计课后练习答案

《J a v a程序设计》课后练习答案第一章Java概述一、选择题1.( A )是在Dos命令提示符下编译Java程序的命令,( B )是运行Java程序的命令。

A.javacB.javaC.javadocD.javaw2.( D )不是Java程序中有效的注释符号。

A.//B.C.D.3.(A.B.C.D.4.JavaA.B.C.D.5.JavaA.1、JavaJava(JVM)Java以下图展示了Java程序从编译到最后运行的完整过程。

2、简述Java语言的特点Java具有以下特点:1)、简单性Java语言的语法规则和C语言非常相似,只有很少一部分不同于C语言,并且Java还舍弃了C语言中复杂的数据类型(如:指针和结构体),因此很容易入门和掌握。

2)、可靠性和安全性Java从源代码到最终运行经历了一次编译和一次解释,每次都有进行检查,比其它只进行一次编译检查的编程语言具有更高的可靠性和安全性。

3)、面向对象Java是一种完全面向的编程语言,因此它具有面向对象编程语言都拥有的封装、继承和多态三大特点。

4)、平台无关和解释执行Java语言的一个非常重要的特点就是平台无关性。

它是指用Java编写的应用程序编译后不用修改就可在不同的操作系统平台上运行。

Java之所以能平台无关,主要是依靠Java虚拟机(JVM)来实现的。

Java编译器将Java源代码文件编译后生成字节码文件(一种与操作系统无关的二进制文件)5)、6)、Java来。

1、/****/}}第二章Java语法基础一、选择题1.下面哪个单词是Java语言的关键字( B )?A. DoubleB. thisC. stringD. bool2.下面属于Java关键字的是( D )。

A. NULLB. IFC. DoD. goto3.在启动Java应用程序时可以通过main( )方法一次性地传递多个参数。

如果传递的参数有多个,可以用空格将这些参数分割;如果某一个参数本身包含空格,可以使用( B )把整个参数引起来。

java语言程序设计基础篇 复习题答案

java语言程序设计基础篇 复习题答案

java语言程序设计基础篇复习题答案Java语言程序设计基础篇复习题答案Java语言是一种广泛应用于软件开发领域的高级编程语言,具有跨平台、面向对象、简单易学等特点。

在学习Java语言的过程中,复习题是一种非常有效的巩固知识的方式。

本文将为大家提供一些Java语言程序设计基础篇的复习题答案,希望能够帮助大家更好地理解和掌握Java语言。

1. 以下代码的输出结果是什么?```javapublic class Test {public static void main(String[] args) {int x = 5;int y = 10;System.out.println("x + y = " + (x + y));System.out.println("x - y = " + (x - y));System.out.println("x * y = " + (x * y));System.out.println("x / y = " + (x / y));}}```答案:```x + y = 15x - y = -5x * y = 50x / y = 0```2. 以下代码的输出结果是什么?```javapublic class Test {public static void main(String[] args) { int x = 5;int y = 10;boolean result = (x > y) && (x != y); System.out.println(result);}}```答案:```false```3. 以下代码的输出结果是什么?```javapublic class Test {public static void main(String[] args) {int x = 5;int y = 10;boolean result = (x < y) || (x == y);System.out.println(result);}}```答案:```true```4. 以下代码的输出结果是什么?```javapublic class Test {public static void main(String[] args) {int x = 5;int y = 10;if (x > y) {System.out.println("x is greater than y"); } else if (x < y) {System.out.println("x is less than y");} else {System.out.println("x is equal to y");}}}```答案:```x is less than y```5. 以下代码的输出结果是什么?```javapublic class Test {public static void main(String[] args) {int x = 5;int y = 10;int max = (x > y) ? x : y;System.out.println("The maximum value is: " + max); }}```答案:```The maximum value is: 10```通过以上复习题的答案,我们可以看到Java语言程序设计基础篇中的一些基本概念和语法。

java语言程序设计基础篇复习题答案

java语言程序设计基础篇复习题答案

java语言程序设计基础篇复习题答案Java语言程序设计是计算机科学与技术专业中的一门重要课程,掌握好基础知识对于学习和应用Java编程语言至关重要。

本文将为大家提供一些Java语言程序设计基础篇复习题的答案,帮助大家更好地理解和掌握这门课程。

1. 什么是Java语言?Java语言是一种面向对象的编程语言,由Sun Microsystems公司于1995年推出。

它具有简单、跨平台、安全、高性能等特点,广泛应用于Web开发、企业级应用开发、移动应用开发等领域。

2. Java程序的基本结构是什么?Java程序的基本结构由类(class)组成,每个Java程序都必须包含一个public 类,且类名必须与文件名相同。

一个Java程序可以包含多个类,但只能有一个public类。

3. 如何定义一个类?在Java中,可以使用关键字class来定义一个类。

类的定义通常包含类的修饰符、类名、类体等部分。

例如:```public class MyClass {// 类体}```4. 如何定义一个方法?在Java中,可以使用关键字public、private、protected等修饰符来定义一个方法。

方法的定义通常包含返回类型、方法名、参数列表、方法体等部分。

例如:```public void myMethod() {// 方法体}```5. 如何定义一个变量?在Java中,可以使用关键字int、double、String等来定义一个变量。

变量的定义通常包含变量类型、变量名、初始值等部分。

例如:```int myVariable = 10;```6. 如何使用条件语句?在Java中,可以使用if语句和switch语句来实现条件判断。

if语句根据条件的真假执行相应的代码块,switch语句根据表达式的值执行相应的代码块。

例如:```int num = 10;if (num > 0) {System.out.println("num是正数");} else if (num < 0) {System.out.println("num是负数");} else {System.out.println("num是零");}int day = 3;switch (day) {case 1:System.out.println("星期一");break;case 2:System.out.println("星期二");break;// ...default:System.out.println("其他");break;}```7. 如何使用循环语句?在Java中,可以使用for循环、while循环和do-while循环来实现循环操作。

java语言程序设计方案基础篇答案

java语言程序设计方案基础篇答案

在一个正n边形中,所以边的长度都相同,且所有角的度数都相同(即这个多边形是等边等角的)。

设计一个名为RegularPolygon的类,该类包括:一个名为int型的私有数据域定义多边形的边数,默认值3。

一个名为side的double型私有数据域存储边的长度,默认值1。

一个名为x的double型私有数据域,它定义多边形中点的x坐标,默认值0。

一个名为y 的double型私有数据域,它定义多边形中点的y坐标,默认值0。

一个创建带默认值的正多边形的无参构造方法。

一个能创建带指定边数和边长度、中心在(0,0)的正多边形的构造方法。

一个能创建带指定边数和边长度、中心在(x,y)的正多边形的构造方法。

所有数据域的访问器和修改器。

一个返回多边形周长的方法getPerimeter()。

一个返回多边形面积的方法getArea().计算多边形面积的公式是:面积=(n*s*s)/(4*tan(p/n)) 画出该类的UML图。

实现这个类。

编写一个测试程序,分别使用无参构造方法、RegularPolygon(6,4)和RegularPolygon(10,4,5.6,7.8)创建三个RegularPolygon对象。

显示每个对象的周长和面积。

代码:class Regularpolygon{private int n=3。

//边长private double side=1。

//边长private double x=0。

private double y=0。

//x,y为多边形中点的x,y坐标Regularpolygon(){}Regularpolygon(int newN,int newS){n=newN。

side=newS。

x=0。

y=0。

}Regularpolygon(int newN,int newS,double newX,double newY){n=newN。

side=newS。

x=newX。

y=newY。

}public void setN(int newN){n=newN。

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

Chapter20Recursion
1.A method that calls itself.One or more base cases(the simplest case)are used to stop recursion.Every recursive call reduces the original problem,bringing it increasingly close to a base case until it becomes that case.
2.f(n)=2if n=1
f(n)=2*2^(n-1)for(n>1)
3.f(n)=x if n=1
f(n)=x*x^(n-1)for(n>1)
4.f(n)=1if n=1
f(n)=f(n-1)+n for(n>1)
5.six times.(base case factorial(0))
6.25times(Why?
number of time fib is invoked in fib(0)=
1
number of time fib is invoked in fib(1)=
1
number of time fib is invoked in fib(2)=
1+number of time fib is invoked in fib(1)+number of time fib is invoked in fib(2)
=1+1+1=3
number of time fib is invoked in fib(3)=
1+number of time fib is invoked in fib(1)+number of time fib is invoked in fib(2)
=1+1+3=5
number of time fib is invoked in fib(4)=
1+number of time fib is invoked in fib(2)+number of time fib is invoked in fib(3)
=1+3+5=9
number of time fib is invoked in fib(5)=
1+number of time fib is invoked in fib(3)+number of time fib is invoked in fib(4)
=1+5+9=15
number of time fib is invoked in fib(6)=
1+number of time fib is invoked in fib(4)+number of time fib is invoked in fib(5)
=1+9+15=25
7.omitted.
8.omitted.
9.an overloaded method with additional parameters.
10.2^5–1
11.
∙Any recursive methods can be converted into a non-recursive method.(TRUE)
∙Recursive method usually takes more time and memory to execute than non-recursive methods.(TRUE)
∙Recursive methods are always simpler than non-recursive methods.(FALSE)
∙There is always a condition statement in a recursive method to check whether a base case is reached.(TRUE)
12.When a method is invoked,its contents are placed into a stack.If a method is
recursively invoked,it is possible that the stack space is exhausted.This causes
stack overflow.
13.(a)The output is15(5+4+3+2+1=15)
(b)7654321
14.(a)The output is54321
(b)The output is12345
15.(a)n is double.There is no guarantee that n!=0will be eventually false.
(b)Infinite recursion due to new Test()inside the constructor Test().
16.The isPalindrome method in Listing20.4,sort method in Listing20.5,and
binarySearch method in Listing20.6are tail-recursive.
17.
/**Return the Fibonacci number for the specified index*/
public static long fib(long index){
return fib(index,1,0);
}
/**Auxiliary tail-recursive method for fib*/
private static int fib(long index,int next,int result){
if(index==0)
return result;
else
return fib(index-1,next+result,next);
}。

相关文档
最新文档