JAVA习题集(含答案)
更新时间:2023-12-06 23:23:01 阅读量: 教育文库 文档下载
- java是什么意思推荐度:
- 相关推荐
JAVA习题集
JAVA习题集(含答案)
习题一:
1. 简述Java的发展过程。 2. 什么是软件? 3. 什么叫做源程序? 4. 什么叫做编译?
5. 什么是Java 的byte-codes?它的最大好处是什么?
6. 机器语言程序、高级语言程序以及可表示成Java字节码的程序之间的区别是什么? 7. Java程序可分为哪两种?分别如何运行? 8. 试简述J2SE、J2ME与J2EE的简单区别。 9. 练习使用浏览器查看Java API文档。 10. SDK的编译命令是什么?
11. 试修改例1-1程序,使其输出的字符串为“I’d like to study Java !”,并在DOS命令行
环境下编译与运行该程序。
习题一参考答案 :
1. 答:
1991:Sun Microsystems公司进军消费电子产品(IA)市场。
1991.4:Sun 成立“Green”小组,以C++为基础开发新的程序设计语言,并将其命名
为Oak。
1992.10:Green小组升格为First Person公司,他们将Oak的技术转移到Web上,并
把Oak改名为Java。
1993~1994:Web在Internet上开始流行,致使Java得以迅速发展并获得成功。 1995.5:Sun Microsystems公司正式发表Java与HotJava产品。
1995.10:Netscape与Sun Microsystems合作,在Netscape Nevigator中支持Java。 1995.12:微软(Microsoft)IE加入支持Java的行列。 1996.2:Java Beta测试版结束,Java 1.0版正式诞生。
第1页 共36页
JAVA习题集
1997.2:Java发展至1.1版。Java的第一个开发包JDK(Java Development Kit)发布。 1999.7:Java升级至1.2版。 2000.9:Java升级至1.3版。 2001.7:Java升级至1.4版。
2. 答:软件可以理解为程序的另一种名称。
3. 答:直接使用高级语言书写的程序代码称为源程序
4. 答:把用高级语言编写的源程序翻译成可执行(目标)程序的过程称为编译。
5. 答:Java源程序经Java的编译器编译过后产生的程序称为Java 的byte-codes。它的
最大好处是可以实现跨平台运行。
6. 答:机器语言程序是可以让计算机直接运行的程序;高级语言程序是必需经过编译或
解释才可以让计算机运行的程序,并且程序的运行依赖于该语言的语言处理系统;可表示成Java字节码的程序必需经过编译产生Java字节码程序,Java字节码程序可以实现跨平台运行。
7. 答:Java程序分为:Java Application(Java应用程序)与应用在www上的Java applet
(Java小应用程序)。Java Application可以在Java平台上独立运行,以main() Method作为程序入口,由Java解释器加载执行。而Java applet则是内嵌在Html文件中,必须搭配浏览器来运行,它没有程序入口。
8. 答:J2ME(Java 2 Micro Edition):用于嵌入式Java消费电子平台。不论是无线通讯、
手机、PDA等小型电子装置都可采用其作为开发工具及应用平台。J2SE[Java 2 (Software Development Kit)Standard Edition]:是Java最通行的版本,是用于工作站、PC机的Java标准平台。J2EE(Java 2 Enterprise Edition):可扩展的企业应用Java 2平台,它提供了企业e-Business架构及Web Services服务。
第2页 共36页
JAVA习题集
9. 答:略 10. 答:javac
11. 答:修改程序如下:
public class BegintoLearn {
public static void main(String args[]) {
System.out.println(\ } }
程序运行部分略。
习题二
1. 下面哪些是合法的常量
(1) 2M (2) 4 (3) 8I (4) 6.5 (5) ch3 (6) 5.6E03 (7) \\t (8) –90 (9) 012 (10) 0x14
2. int、char、float和double类型的变量各占有多少个字节?试写出它们各自的取值范围。 3. 下列符号那些可以作为Java的变量名?
(1) 3a (2) main (3) KFC (4) ch.s (5) File (6) a*b (7) m_n (8) new (9) nn2 (10) -x (11) _y (12) exp (13) ha? (14) m&m (15) j,k (16)p:q 4. 什么叫做变量的作用域?
5. 试写出下列Java表达式的运算结果:
(1) 15+4*5-12 (2) (18-4)/7+6 (3) 2>=5
第3页 共36页
JAVA习题集
(4) 6<=6
(5) 5>2 && 8<8 &&23<36 (6) 56/9+3.6 (7) 48%9+5*5-4 (8) 9-7<0 || 11>8 (9) (3>2) ? 8 : 9 (10) 9= =8 && 3<7
6. 假设int m=2,float n=0.1f,经过下列表达式的运算后,m、n各为什么值?
(1) m=9/8; (2) m=45%8+4*5-4; (3) m=36+36*2%m--; (4) m*=5/m-1; (5) n-=5*3.1;
7. 编写一程序,利用System.out.println()方法分别输出下列语句的执行结果:
(1) 将变量m的初值赋值为10,变量n的初值赋值为5。 (2) 变量m的值加3,n的值加5。
(3) 求m和n的平均值,并将该值赋于变量p。 (4) 将m的平方乘以n的平方并赋值给变量q。 请注意各变量定义时所应该使用的数据类型。
8. 已知圆球体积公式为,编写一程序,设计一个求圆球体积的方法,并在主程序中调用
它,求出当r=3时,圆球的体积值。
习题二参考答案:
1. 答:
(1) 不合法 (2) 合法 (3) 不合法 (4) 合法 (5) 不合法 (6)合法 (7) 合法 (8) 合法 (9) 合法 (10) 合法 2. 答:
第4页 共36页
JAVA习题集
变量类型 内存中所占字节数 取值范围
int 4 -231~ (231-1) float 4 3.4e-038 ~ 3.4e+038 double 8 1.7e-308 ~1.7e+308 char 2 0 ~ 65535。
3. 下列符号那些可以作为Java的变量名?
(1) 不合法 (2)合法 (3)合法 (4) 不合法 (5)合法 (6) 不合法 (7) 合法 (8). 不合法 (9)合法 (10). 不合法 (11)合法 (12)合法 (13) 不合法 (14) 不合法 (15) 不合法 (16) 不合法
4. 答:变量的作用域指的是可以访问这一变量的程序代码的范围。 5. 答:
(1) 23 (2) 8 (3) false (4) true (5) false (6) 9.6 (7) 24 (8) true (9) 8 (10)false 6. 答:
(1) 1; (2) 21; (3) 45; (4) –45;
第5页 共36页
JAVA习题集
(5) –15.4;
7. 答:程序如下: public class ProNum {
public static void main(String args[]) {
float p; long q; int m=10,n=5;
System.out.println(\ m=m+3;n=n+5;
System.out.println(\ p=(float)(m+n)/2;
System.out.println(\ q=(m*m*n*n);
System.out.println(\ } }
8. 答:程序如下:
class Sphere { int r; double v;
public void CalVolume() { v=3.14*r*r*r*4/3; }
public void display() { System.out.println(\ }
n=\ n=\ 第6页 共36页
JAVA习题集
}
class SphereClass
{ public static void main(String args[]) { Sphere s = new Sphere(); s.r = 3; s.CalVolume(); s.display(); } }
习题三
1. 什么是结构化程序设计?
2. 使用if语句与使用条件运算符“?:”有什么不同? 3. 使用for循环与while循环的条件有什么不同? 4. 简述break语句与continue的区别?
5. 编写程序:由键盘输入两个字符串“12”与“24”,将它们转换成整数,然后计算并
输出这两个数的和。
6. 编写程序:由键盘输入给出一个百分制成绩,要求输出成绩等级’A’、’B’、’C’和’D’,
90分以上为’A’,75~89为’B’,60~74为’C’,60分以下为’D’。
7. 编一程序,求一个10项所组成的等差数列,其奇数项之和为135,偶数项之和为150。 8. 用for语句输出下列数字金字塔:
1
1 3 1 1 3 5 3 1
1 3 5 7 5 3 1
1 3 5 7 9 7 5 3 1
第7页 共36页
JAVA习题集
9. 编写程序:由键盘输入一正整数,求出小于且等于这个数的所有质数。
10. 编写程序:由键盘输入一整数,求出该数所有的因子,如输入6,则输出的6
的所有因子为1、2、3、6。
11. 假设有一条钢材长2000米,每天截取其中的一半,编一程序求出多少天后,
钢材的长度开始短于5米?
12. 编写程序:利用数列来取得 的近似值。并计算在得到3.14159之前,这个数
列要取到第几项? 13. 使用java.long.Math类,生成10个0~99之间的随机整数,求出它们中的最大
值和最小值。
提示:java.long.Math类支持random方法:Math. Random( )。该方法返回值是正数,类型为
double,范围为0~1。如果要得到其它范围的数,则要进行相应的转换。例如要得到(a,b)之间的整数的方法是:(int) ((b-a+1)*Math.random()+a)。若要得到(0,99)之间的整数可以使用下列语句: int m = (int) (100*Math.random());
14. 编写程序:声明一数组来存放12个月的英文名称,由用户从键盘输入月份,
如输入8,则程序输出相应的月份名称:August。同时请大家考虑若是用户输入了1~12以外的内容,你的程序将如何应对?
15. 编写程序:由键盘输入一16位的长整数,统计0~9这十个数字每一个出现的
次数。
16. 编写程序:将两个各有6个整数的数组,合并成一个由小至大排列的数组(该
数组的长度为12)。
17. 编写程序:以递归的方式实现1+2+3+……+n(n = 200)的计算。
习题三参考答案:
1. 答:具有顺序结构流程、选择结构流程以及循环结构流程这三种结构的程序设计技术
称为结构化程序设计。
2. 答:条件运算符“?:”只是if语句的一种最简单的形式,而if语句则具有更强的功
能,它除了“?:”所表示的单分支结构外,还具有双分支结构以及多分支结构等。
第8页 共36页
JAVA习题集
3. 答:for语句往往在已知循环次数的前提下使用,在循环次数未知时则需使用while语
句进行循环。
4. 答:在循环语句被执行时若遇到break语句则强行结束本轮循环,而遇到continue语句
时将不在执行该语句下面的本次循环的语句,回到循环开始处继续执行下一次循环。
5. 答:程序如下: import java.io.*; public class InNum {
public static void main(String args[]) throws IOException {
int num1,num2; String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in)); System.out.print(\ str=buf.readLine(); num1=Integer.parseInt(str);
System.out.print(\ str=buf.readLine();
num2=Integer.parseInt(str); System.out.println(\ } }
6. 答:程序如下: import java.io.*; public class Grade {
public static void main(String args[]) throws IOException {
第9页 共36页
JAVA习题集
int score; char ch; String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in)); System.out.print(\ str=buf.readLine(); score=Integer.parseInt(str); if (score>=90) ch='A'; else if (score>=75) ch='B'; else if (score>=60) ch='C'; else ch='D';
System.out.print(\ } }
7. 答:程序如下: public class ShuLie {
public static void main(String args[]) {
int a ,q ,n; q=(150-135)/5; a=(135-20*q)/5; for (n=0;n<10;n++)
System.out.print((a+n*q)+\ \
第10页 共36页
JAVA习题集
} }
8. 答:程序如下: public class Pyramid {
public static void main(String args[]) { int i,j,k; for(i=0;i<=4;i++)
{ for ( j=0;j<20-i;j++) System.out.print(\ \ for (k=0;k<=2*i;k++) if (k<=i)
System.out.print(\ else
System.out.print(\ System.out.println(); } } }
9. 答:程序如下: import java.io.*;
public class PrimeNumber{
public static void main(String args[]) throws IOException {
int n=0; int m; String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in)); System.out.print(\ str=buf.readLine();
第11页 共36页
JAVA习题集
m=Integer.parseInt(str);
outer:for(int i=3;i<=m;i+=2){ //outer loop for(int j=2;j
System.out.print(\ \
n++; //outputanewline if(n==10) //after10numbers { System.out.println(); n=0; } }
System.out.println(); } }
10. 答:程序如下: import java.io.*; public class Factor12{
public static void main(String args[]) throws IOException { int m; String str;
BufferedReader buf;
buf=new BufferedReader(new InputStreamReader(System.in)); System.out.print(\ str=buf.readLine();
m=Integer.parseInt(str);
第12页 共36页
JAVA习题集
System.out.print(m+\ \ System.out.println( ); for(int i=1;i<=m;i++) if (m%i==0)
System.out.print(\ \ } }
11. 答:程序如下: public class MSteel{
public static void main(String args[]) {
int d=0; float m=2000; while (m>=5) { m=m/2; d++;
System.out.print(d+\ \ System.out.println(m); }
System.out.print(\ \ days\ } }
12. 程序如下: public class AlmostPi{
public static void main(String args[]) {
int n;
第13页 共36页
JAVA习题集
long m; double s,t; n=1; m=0; s=0; do
{ t=(double)n/(2*m+1); m++; n=-n; s=s+t;
} while (4*s-3.14159> 0.0000001 || 4*s-3.14159< -0.0000001); System.out.println(m); } }
13. 答:程序如下:
public class LSRnd{
public static void main(String args[]) {
int mun,n,max1,min1; max1=0; min1=100;
for (n=1;n<=10;n++)
{ mun=(int)(100*Math.random()); System.out.print(mun+\ \ if (mun>max1) max1=mun; if (mun 第14页 共36页 JAVA习题集 System.out.println(); System.out.println(\ \ System.out.println(\ \ } } 14. 答:程序如下: import java.io.*; public class StrArry { public static void main(String args[]) throws IOException { int m; String str; String month[]={\,\ BufferedReader buf; buf=new BufferedReader(new InputStreamReader(System.in)); System.out.print(\ str=buf.readLine(); m=Integer.parseInt(str); if (m>=1 && m<=12) System.out.println(month[m-1]); else System.out.print(\ } } 15. 答:程序如下: 第15页 共36页 JAVA习题集 f=f+i; return f;} public int fun(int x) { int f=1; for(int i=this.x;i<=x;i++) f=f*i; return f;} } class Son extends Father{ public Son(int a) { super(a);} public int fun(){ int f=1; for(int i=1;i<=x;i++) f=f*i; return f;} } public class Pol_ex{ public static void main(String args[]){ Father f1=new Father(5); Son s1=new Son(3); System.out.println(s1.fun()); System.out.println(f1.fun()); System.out.println(f1.fun(6)); f1=s1; System.out.println(s1.fun()); System.out.println(f1.fun()); System.out.println(f1.fun(6)); } } 第21页 共36页 JAVA习题集 习题四参考答案: 2、 import java.util.*; public class Person {private String name; private char sex; private int year,month; public Person( ){} public Person(String nm,char sx,int y,int m) { name=nm; sex=sx; year=y; month=m;} public void printPerson( ) {Calendar now=Calendar.getInstance(); int age=now.get(Calendar.YEAR)-year; System.out.println(\ public static void main(String args[]) {Person pe1=new Person(\ pe1.printPerson();} } 3、 public class Rectangle {double width,length,girth,area; public Rectangle(){}; public Rectangle(double wd,double le) 第22页 共36页 JAVA习题集 { width=wd;length=le;} public void setWidth(double wd) {width=wd;} public void setLength(double le) {length=le;} public double getWidth( ) {return width;} public double getLength( ) {return length;} public double girth() {return 2*(width+length);} public double area() {return width*length;} public void printRectangle() { System.out.println(\ public static void main(String args[]) {Rectangle re1=new Rectangle(10,20); Rectangle re2=new Rectangle(); re2.setWidth(3); re2.setLength(4); re1.printRectangle(); System.out.println(\ re2.printRectangle(); System.out.println(\ } 4、 public class Matrix {private int mx[][],m,n; public Matrix(int r,int c) 第23页 共36页 JAVA习题集 {m=r; n=c; mx=new int[m][n]; iniMatrix();} public Matrix() {m=3; n=3; mx=new int[3][3]; iniMatrix();} public void iniMatrix() {int i,j; for(i=0;i<=m-1;i++) for(j=0;j<=n-1;j++) mx[i][j]=(int)(Math.random()*100);} public void tranMatrix() {int i,j,t; int mt[][]=new int[m][n]; for(i=0;i<=m-1;i++) for(j=0;j<=n-1;j++) mt[i][j]=mx[i][j]; t=m; m=n; n=t; mx=new int[m][n]; for(i=0;i<=m-1;i++) for(j=0;j<=n-1;j++) mx[i][j]=mt[j][i];} public void printMatrix() {int i,j; for(i=0;i<=m-1;i++) 第24页 共36页 JAVA习题集 { for(j=0;j<=n-1;j++) System.out.print(\ \ System.out.println();} } public void addMatrix(Matrix b) {int i,j; for(i=0;i<=m-1;i++) for(j=0;j<=n-1;j++) mx[i][j]=mx[i][j]+b.mx[i][j]; } public static void main(String args[]) {Matrix ma=new Matrix(4,3); Matrix mb=new Matrix(4,3); System.out.println(\ matrix_A:\ ma.printMatrix(); System.out.println(\ matrix_B:\ mb.printMatrix(); System.out.println(\ ma.addMatrix(mb); ma.printMatrix(); System.out.println(\ mb.tranMatrix(); mb.printMatrix(); }} 10、 public class Substring {public static void main(String args[]) {String str1=new String(\ String str2=new String(\ int n; n=str1.indexOf(str2); 第25页 共36页
正在阅读:
JAVA习题集(含答案)12-06
春雨绵绵作文300字07-05
银行各种安全风险案例汇编06-30
许昌市2018年九年级第一次模拟考试语文试卷 有答案06-27
城镇居民基本医疗保险实施细则08-07
(档案管理)文书档案归档制度05-10
品味学习真乐趣作文600字06-29
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 习题集
- 答案
- JAVA
- 四川音乐学院绵阳艺术学院2014年招生简章(四川)
- 2018年财务报表分析网上作业:任务2格力电器营运能力分析
- 物理化学核心教程第二版(沈文霞)课后习题答案7.8章
- SPSS社会统计练习题 - 图文
- 联合循环机组余热锅炉、汽机的运行调整交稿
- 产品账户开户
- HCS878 8.0 使用说明书 - 图文
- 房地产评估习题
- 分析讨论题
- 经济学作业
- 利用化学方程式的简单计算教案示例
- 人教版小学二年级语文上册期末复习基础知识整理归纳表 - 图文
- 上世纪90年代以来
- 初中英语句子翻译及答案
- 2020届二轮复习 有机化学基础 专题卷(全国通用)(2)
- 超星2017大学计算机基础答案(全)
- C语言习题 答案讲解
- 消防泵房每日巡视检查记录表
- 某高速公路施工组织设计
- 水流量计算公式