文档库 最新最全的文档下载
当前位置:文档库 › 90道java题目

90道java题目

90道java题目
90道java题目

Java编程题90道

1.完成数组int[] a = {100,40, 60, 87, 34, 11, 56, 0}的快速排序、冒泡排序;

2.采用折半查找的算法,在数组中查询到某个数;

3.在中文环境下,有字符串,将其每个字节的数据相加求和。

4.将一个数组中值=0的项去掉,将不为0的值存入一个新的数组,比如:

int a[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};

生成的新数组为:

int b[]={1,3,4,5,6,6,5,4,7,6,7,5}

5.定义10个长度的Student数组,将10个Student对象的年龄全部加1,然后把10个Student对象的详细信息逐行打印出来(数组和ArrayList实现)。

6.有工人,农民,教师,科学家,服务生,其中,工人,农民,服务生只有基本工资.教师除基本工资外,还有课酬(元/天),科学家除基本工资外,还有年终奖,请你写出相关类, 将各种类型的员工的全年工资打印出来;

?? 7.创建一个复数类complex,对复数进行数学运算,复数具有如下格式:RealPart+ImaginaryPart*I

其中,I为-1的平方根。

要求如下:

(1)利用浮点变量表示此类的私有数据。提供两个构造方法,一个用于此类声明时对象的初始化;一个为带默认值得无参构造方法。

(2)提供两复数加、减、乘的运算方法。

(3)按格式(a,b)打印复数。其中a为实部,b为虚部。

8.实现圆类circle,包含相关的成员变量和成员方法。从圆类派生出圆柱类cylinder。根据建立的两个类,从键盘输入5个圆的半径,5个圆柱的半径和高度,

并分别是输出5个圆的面积,5个圆柱的体积。

9.输入一个整数,求这个整数中每位数字相加的和

10.编写一个java应用程序,要求如下:

(1)声明一个String类的变量并初始化值“Hello World”。

(2)用字符串类的一个方法将上面变量的值拆分成” Hello”和“World”两个字符串并打印输出。

(3)将” Hello”这个变量转换成大写、“World”转换成小写并打印输出。

(4)声明一个String类的变量并初始化值“20100110”。

(5)将上面变量的值转换成2010年1月10日的形式打印输出。

11.程序功能:求s=1+3+5+7+...直到s>2000为止。

12.程序功能:计算s=2!+4!+8!。(首先先定义一个函数,函数的功能就是求任何一个数的阶乘)

13.程序功能:求200到400间,能被3整除但不能被7整除的数的个数。

14.程序功能:求能被3整除且至少有一位数字为5的三位数的个数。

15.程序功能:求三位奇数中,个位数字与十位数字之和除以10所得的余数是百位数字的数的个数。

16.解百马百瓦古题。大、小马和马驹共100匹,共驮100片瓦。大马一驮三,小马一驮二,马驹二驮一,一次驮完,三种马都驮,共有多少种组合?

17.程序功能:求100-200之间的所有素数

18.程序功能:输出水仙花的个数(所谓水仙花数是指一个三位十进制数,该数的各位数字立方之和等于该数本身。

例如153是一个水仙花数,因为1^3+5^3+3^3=153)

19.程序功能:猴子第1天摘下若干桃子,当即吃掉一半,又多吃一个,第二天将剩余的部分吃掉一半还多一个;以此类推,到第10天只剩余1个。问第1天共摘了多少桃子。

20.程序功能:一个两位数的正整数,如果将其个位数与十位数字对调所生成的数称为其对调数,如28是82的对调数。现给定一个两位的正整数46,请找到另一个两位的整数,使这两个数之和等于它们的各自的对调数之和。这样的另一个两位数有多少个。

21.程序功能:求1~200之间的能被7整除的数的平方和。

22.程序功能:求1~99的平方根的和并输出结果。(保留小数点两位)

23.程序功能:求[351,432]之间既不能被3整除,也不能被8整除的正整数的个数。

24.程序功能:已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。问[100,300]之间有多少个这样的数。

25.程序功能:若某整数N的所有因子之和等于N的倍数,则N称为多因子完备数,如数28,其因子之和1+2+4+7+14+28=56=2*28,28是多因子完备数。求[1,200]之间有多少个多因子完备数。

26.程序功能:我国今年的国民生产总值为45600亿元,若今后每年以9%的增长率增长,计算多少年后能实现国民生产总值翻一番?

27.程序功能:有一个三位数满足下列条件: (1)三位数字各不相同; (2)此数等于它的各位数字的立方和。求这种三位数的个数。

28.程序功能:求1~130之间所有整数的立方和并输出结果。程序中有两行有错误。

29.程序功能:求[3,500]内所有素数之和。(首先如何找出素数)

30.程序功能:把一张一元钞票,换成一分、二分和五分硬币,每种至少8枚,求方案数。

31.程序功能:设某四位数的千位数字与十位数字的和等于百位数字与个位数字的积,例如,对于四位数:9512,9+1=5*2,求所有这样的四位数之和。

32.程序功能:若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是“四位双平方数”。例如:由于7396=86^2,且7+3+9+6=25=5^2,则称7396是“四位双平方数”。求最小的“四位双平方数”。

33.程序功能:计算y=1+2/3+3/5+4/7+…+n/(2*n-1)(n=50), 要求:按四舍五入的方式精确到小数点后第二位。

34.程序功能:求当N=20时,1/(1*2)+1/(2*3)+1/(3*4)+….+1/(N*(N+1))的值。要求:按四舍五入的方式精确到小数点后第二位。

35.程序功能:回文数是指正读和反读都一样的正整数。例如3773是回文数。求[1000,9999]之间的奇数回文数的个数。

36.程序功能:求m=50时,表达式t=1-1/(2*2)-1/(3*3)-…-1/(m*m)的值。要求:按四舍五入的方式精确到小数点后第四位。

37.程序功能:求[10,1000]之间满足除以7余5、除以5余3、除以3余1的所有整数的个数。

38.程序功能:百钱百鸡问题。用100钱买100只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡三只一钱,编程计算共有几种买法(要求每种鸡至少要买1只)。

39.程序功能:求共有几组i、j、k符合算式ijk+kji=1333,其中i、j、k是0~9之间的一位整数。

40.程序功能:求四位奇数中,所有各位数字之和是25的倍数的数之和。

41.程序功能:根据整型参数m的值,计算公式t=1-1/(2*2)-1/(3*3)-…-1/(m*m)的值(m=100)。

42.程序功能:根据整型参数m,计算1-123的平方根的倒数之和。

43.程序功能:用公式pi/4=1-1/3+1/5-1/7+…求pi(pi为圆周率) 的近似值,直到最后一项的绝对值小于指定的数(参数num)为止。

44.程序功能:根据以下公式pi/2=1+1/3+1/3*2/5+1/3*2/5*3/7+1/3*2/5*3/7*4/9+…求pi(pi为圆周率)的值。当最后一项的值小于0.0005时停止计算。

45.程序功能:计算两个数的最小公倍数

46.程序功能:求1900年~2003年所有闰年年号之和。(年号能被400整除的是闰年,或者被4整除但不能被100整除的是闰年)

47.程序功能:计算两个数的最大公约数。

48.程序功能:一个数出现在该数的平方数的右边,称这个数为“同构数”。例如,5出现在平方数25的右边,25出现在平方数625的右边,则5、25都是“同构数”。求[1,1000]之间的所有“同构数”的个数。

49.程序功能:求字符串“This is my Basic”所有字符的ASCII码之和。

50.程序功能:求满足以下条件的(a,b,c)的组数:(1) 1/(a^2)+1/(b^2)=1/(c^2) ;(2)

a>b>c ;(3)a+b+c<100。

51.程序功能:求个位数是6,且能被3整除的所有四位数之和。

52.程序功能:有一堆零件(零件个数不超过1000),如果分成4个零件一组余2个;7个一组余3个; 9个一组余5个。求这堆零件的个数有几种可能。

53.程序功能:求这样的一个三位数,其个位数不大于2。若将个位数移动到百位之前(如:321移成132),新三位数大于原三位数的两倍。

54.程序功能:有一堆桃子(个数不超过1000),如果分成4个一组余2个;7个一组余3个;9个一组余5个。求这堆桃子的个数有几种可能。

55.程序功能:求sum=d+dd+ddd+……+ddd..d(d为1-9的数字)。例如,3+33+333+3333(此时d=3,n=4)从键盘上输入d 的值为3,n的值为4。

56.程序功能:求数列2,4,8,16,32,…前若干项之和。当和大于9000时,终止求和并输出结果。

57.程序功能:将50元兑换成5元、2元和1元的方法(每种面额不能为0)的种数。

58.程序功能:某试卷由26个问题组成,答对一题得8分,答错一题扣5分。今有一考生虽然回答了全部26个问题,但所得总分为零,问他错答多少题。

59.程序功能:某班级有学生若干名,依次编号为1,2,3,……,除去编号1与2的两名学生外,所有学生编号之和是100的整数倍,如果知道学生编号之和小于1000,问共有学生多少人。

60.程序功能:在一个正整数序列中,第一项是1978,第二项是1979,从第三项起每一项等于前二项的差的绝对值,问此数列有多少项。

61.程序功能:有一堆零件(零件个数不超过1000),如果分成4个零件一组余2个;7个一组余3个; 9个一组余5个。求这堆零件的个数有几种可能。

62.程序功能:求1~200之间勾股数的组数(如a*a+b*b=c*c,则a,b,c为一组勾股数)。

63.程序功能:给定一个100行和100列的整数方阵,求左上至右下对角线上各元素之和。(首先了解什么事方阵)

64.一辆以固定速度行驶的汽车,司机看到里程表上从左到右的读数和从右到左的读数是相同的,这个数是12321(公里),2小时后,里程表上再次出现一个新的对称数。问车的速度是多少公里/小时?

65.n个人围成一圈(编号为1-n),从第1号的人开始从1报数,凡报到3的倍数的人离开圈子,然后再数下去,直到最后只剩一个人为止。问当n=17时,剩下的人是多少号?

66.求数列f(n) = n*n+n+41的前100项中素数的个数

67.士兵在演练过程中,队伍变换成10、21、35、60行时,队形都能成为矩形。问参加演练的士兵最少有多少人?

68.算年龄。用爷爷的年龄的5倍加6得的和,再乘以20,再加上奶奶的年龄,再减去365,得数为6924,又知爷爷比奶奶大2岁。求爷爷、奶奶的年龄的和。

69.宴会上一共有1225次握手,设每一位参加宴会的人对其他与会人士都有一样的礼节,那么与会人士有多少?

70.金星和地球在某一时刻相对于太阳处于某一确定位置,已知金星绕太阳一周为225日,地球绕太阳一周为365日,问两个行星至少经过多少日仍同时回到原来的位置上?

71.求表达式e^x ≈1+x+x^2/2!+x^3/3!+x^4/4!……+x^n/n!的近似值,设x=9,n=25;

72.求表达式e^x ≈1+x+x^2/2!+x^3/3!+x^4/4!……+x^n/n!的近似值,直到最后一项小于0.01为止;设x=9

73.用sin(x)≈x-x^3/3!+x^5/5!-……+(-1)^(n-1)*(x^(2n-1))/(2n-1)!的公式求近似值。设x=7,n=15。

74.用sin(x)≈x-x^3/3!+x^5/5!-……+(-1)^(n-1)*(x^(2n-1))/(2n-1)!的公式求近似值,直到最后一项绝对值小于0.00001为止。设x=7。

75.用cos(x)≈1-x^2/2!+x^4/4!-……+(-1)^(n)*(x^(2n))/(2n)!的公式求近似值,设x=9,n=15

76.用cos(x)≈1-x^2/2!+x^4/4!-……+(-1)^(n)*(x^(2n))/(2n)!的公式求近似值,直到最后一项绝对值小于0.00001为止。设x=7。

77.已知Sn=A1+A2+A3+...+An, 其中,当n为奇数时An=n-1,当n为偶数时,An=n+1.例如:S6=0+3+2+5+4+7, 求:S60=A1+A2+A3+...+A60.

78.求在 1,2,3,...,100中, 任选两个不同的数,要求它们的和能被3和7整除的数的对数(注意:3+5和5+3认为是同一对数)。

79.已知S1=1, S2=1+2, S3=1+2+3,...,SN=1+2+3+...+N, 求在S1,S2,S3,...,S100 中,所有能被3和7整除的数之和

80.已知菲波纳契数列{ X }中,X(1)=0,X(2)=1,X(n)=X(n-1)+X(n-2),编程求数列前30个数中,所有质数的和。

81.求三位数中,个位数字与十位数字之和除以10所得的余数是百位数字,且百位数字是偶数的数的个数。

82.一个素数称之为超级素数,若该素数依次去掉个位,十位,...等等,每次所得的数仍然是素数。例如239就是超级素数。求[100,9999]之内超级素数的个数

83.求杨辉三角形中,第20行第10列的数为多少?杨辉三角形: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 …………………………(自行查看什么是杨辉三角)

84.一个数如果刚好与它所有的因子之和相等,则称该数为“完数”,如6=1+2+3,则6就是个完数。编程求[8000,9000]之间完数的个数。

85.我国古代数学家在《算经》中出了一道题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?”意为公鸡5吊钱1 只,母鸡3吊钱1只,3只小鸡值1吊钱。编程实现用100吊钱买100只鸡,公鸡、母鸡、小鸡每种鸡至少一只,有多少种买法?

86.Fibonacci数列的前几个数为:0,1,1,2,3,5,…,其规律是: F1 = 0 (n = 1) F2 = 1 (n = 2) Fn = Fn-1+Fn-2 (n ≥ 3) 编程求此数列的前40项之和。

87.抓交通肇事犯:一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但是没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙说:四位的车号刚好是一个整数的平方。

88.4位反序数:设N是一个四位数,它的9倍恰好是其反序数,求N。(反序数就是将整数的数字倒过来形成的整数,如1234的反序数是4321。)

89.高次方程尾数的问题:求13的298次方的最后三位数是多少?编程实现之。

90.从键盘输入两个数51211314和84131421,利用辗转相除法求它们的最大公约数。求需要经过多少次辗转。

Java考试题

试题一: 1、定义接口Printx, 其中包括一个方法printMyWay(),这个方法没有形参,返回值为空。 2、编写矩形类Rectangle,矩形类要求实现Printx接口, 方法:①求面积的方法getArea(); ②求周长的方法getLength(); ③显示矩形的边长、面积和周长的方法printMyWay() 。 3、编写正方形类Square作为矩形类的子类, ①正方形类继承了矩形类求面积和周长的方法; ②新增加求对角线长的方法getDiagonal() ③重写printMyWay()方法,要求该方法能显示正方形的边长、面积、周长和对角线长。 4、编写Geometry类, 实例化Rectangle类和Square类,输出相应的属性值,并计算矩形、圆形的周长和面积。 试题二: 1.定义一个DateCount类, 私有属性:year(年)、month(月)、day(日)。 方法:①初始化year、month、day三个参数的构造方法; ②设置年份,获取年份;设置月份;获取月份;设置日期,获取日期; ③对年份、月份、日期做合理性校验; ④age方法,用于计算年龄; ⑤tomorrow方法,用于计算下一天的年、月、日。(参考课本P91) 2.定义一个测试类DateCount, 创建DateCount的对象dc并通过构造方法初始化成员变量,输出DateCount 类对象的值。假定成员变量的值代表人的生日,调用age方法计算其年龄,调用tomorrow方法计算生日的下一天。

试题三: 1.写一个成绩类Grade, 私有属性:学号ID,姓名name,成绩grade; 方法:①设置学号,获取学号;设置姓名,获取姓名;设置成绩,获取成绩; ②设置成绩方法中要求对成绩做合理性校验,即[0,60)∈不及格,[60,75)∈及格,[75,85)∈良好,[85,100]∈优秀,否则成绩不合法。 ③max方法,用于找出最高成绩。(假设只输入三个人的成绩) 2.写一个测试类TestGrade, 实例化3个Grade类,为各个属性赋值,输出每个人的成绩等级和最高成绩。 试题四: 1.定义一个表示学生信息的类Student: 私有成员变量:sNo(学号);sName(姓名);sSex(性别);sAge(年龄);sJava:(Java课程成绩) 方法:①设置学号setNo();获得学号getNo();设置姓名setName();获得姓名getName();设置性别setSex();获得性别getSex();设置年龄setAge();获得年龄getAge();设置Java课程成绩setJava();获得Java 课程成绩getJava(); ②setJava()中要对成绩做适当的校验。 2.创建两个Student类的对象,存储并输出两个学生的信息,并输出这两个学生Java语言成绩的平均值。 3.创建Student类的5个对象,求他们Java语言成绩的最大值和最小值。 试题五: 1.编写一个抽象类Shape, 私有属性:颜色color。

JAVA题目附答案

JA V A 题目 1. 若有以下代码: int x=5,y=6; If(x++>=y && x >++y) { } 则执行后,X和y的值分别是() A. 5 6 B. 6 6 C. 6 7 D. 7 7 2.字节型数据的取值范围是: A) -128 ~ 127 B) -28 -1 ~ 28 C) -255 ~ 256 D) 取决于具体的Java虚拟机 4. class Excise { public void method() { byte a = 127; int x = ++a; int y = a + 1; "x=" + x + " y=" + y); } } class TestExcise{ public static void main(String args[]) { Excise o = new Excise (); (); } } A) 输出:x=128 y=128 B) 输出:x=128 y=129 C) 输出:x=-128 y=128 D) 输出:x=-128 y=-127 5. 写出下面代码段的运行结果(A) boolean flag = false; if (flag = true) { "true"); } else { "false"); } A) true B) false C) 出错 D) 没有信息输出 6. 执行下面代码会输出什么内容() Boolean b1 = new Boolean(true); Boolean b2 = new Boolean(true); Object obj1 = (Object)b1; Object obj2 = (Object)b2; if (obj1 == obj2) if (obj2)) "a"); else "b");

Java经典编程题50道

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如: 153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下 的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。 【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为'\n'. 【程序8】 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加), 几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。 【程序9】

JAVA考试题1-30题

Given: 1. public class Test { 2. public static void main(String args[]) { 3. class Foo { 4. public int i = 3; 5. } 6. Object o = (Object)new Foo(); 7. Foo foo = (Foo)o; 8. System.out.println(“i = “ + foo.i); 9. } 10. } What is the result? A. i = 3 B. Compilation fails. C. A ClassCastException is thrown at line 6. D. A ClassCastException is thrown at line 7. QUESTION NO: 2 Which two cause a compiler error? (Choose two) A. float[] = new float(3); B. float f2[] = new float[]; C. float[] f1 = new float[3]; D. float f3[] = new float[3]; E. float f5[] = { 1.0f, 2.0f, 2.0f }; F. float f4[] = new float[] { 1.0f. 2.0f. 3.0f}; QUESTION NO: 3 Given: 11. int i =1,j =10; 12. do { 13. if(i++> --j) { 14. continue; 15. } 16. } while (i <5); 17. System.out.println(“i = “ +i+ “and j = “+j); What is the result? A. i = 6 and j = 5 B. i = 5 and j = 5 C. i = 6 and j = 5 D. i = 5 and j = 6 E. i = 6 and j = 6

java100道选择题含答案

1. 下列不可作为java语言标识符的是(D) A) a1 B) $1 C) _1 D) 11 2. 有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A) A) a1.java B) a1.class C) a1 D) 都对 3. 整型数据类型中,需要内存空间最少的是(D) A) short B) long C) int D) byte 4. Java 类可以作为(C) A) 类型定义机制 B) 数据封装机制 C) 类型定义机制和数据封装机制 D) 上述都不对 5. 在创建对象时必须(C) A) 先声明对象,然后才能使用对象 B) 先声明对象,为对象分配内存空间,然后才能使用对象 C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象 D) 上述说法都对 6. 在调用方法时,若要使方法改变实参的值,可以(B) A) 用基本数据类型作为参数 B) 用对象作为参数 C) A和B都对 D) A和B都不对 7. Java中(C) A) 一个子类可以有多个父类,一个父类也可以有多个子类 B) 一个子类可以有多个父类,但一个父类只可以有一个子类 C) 一个子类可以有一个父类,但一个父类可以有多个子类 D) 上述说法都不对 8. Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B) A) 安全性B) 多线性C) 跨平台D) 可移植 9. Character流与Byte流的区别是(C) A) 每次读入的字节数不同B) 前者带有缓冲,后者没有 C) 前者是字符读写,后者是字节读写D) 二者没有区别,可以互换使用 10. 以下声明合法的是( D ) A、default String s; B、public final static native int w( )

java题带答案

Java期末考试题库 选择题 (ABCD)1、以下选项中,哪些属于JDK工具?(多选) A、Java编译器 B、Java运行工具 C、Java文档生成工具 D、Java打包工具 (C)2、Java属于以下哪种语言? A、机器语言 B、汇编语言 C、高级语言 D、以上都不对(AD)1、以下选项中,哪些属于合法的标识符?(多选)AD A、Hello_World B、class C、123username D、username123 (AD)2、关于方法重载的描述,以下选项中哪些是正确的?(多选)(AD)ABD A、方法名必须一致 B、返回值类型必须不同 C、参数个数必须一致 D、参数的个数或类型不一致 (C)3、以下关于变量的说法错误的是? C A、变量名必须是一个有效的标识符 B、变量在定义时可以没有初始值 C、变量一旦被定义,在程序中的任何位置都可以被访问 D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明

(ABCD)4、以下选项中,switch语句判断条件可以接收的数据类型有哪些?(多选) ABCD A、int B、byte C、char D、short (AC)7、下列语句哪些属于循环语句?(多选) AC A、for语句 B、if语句 C、while语句 D、switch语句 (A)8、下面哪种写法可以实现访问数组arr的第1个元素?A A、arr[0] B、arr(0) C、arr[1] D、arr(1) (B)9、以下哪个选项可以正确创建一个长度为3的二维数组? (B)C A、 new int [2][3]; B、 new int[3][]; C、 new int[][3]; D、以上答案皆不对 (A)10、请先阅读下面的代码。 int x = 1; int y = 2; if (x % 2 == 0) { y++; }else { y--; } System.out.println("y=" + y); 上面一段程序运行结束时,变量y的值为下列哪一项? A、1 B、2 C、3 D、switch语句

java笔试题及答案

java笔试题及答案(必背) 来源:黄德洋的日志 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package 子孙类其他package public √√√√ protected √√√× friendly √√ × × private √××× 不写时默认为friendly 2、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实 现)interface(接口) 答:匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、Static Nested Class 和Inner Class的不同 答:Nested Class (一般是C++的说法),Inner Class (一般是JAVA的说法)。Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。注:静态内部类(Inner Class)意味着1创建一个static 内部类的对象,不需要一个外部类对象,2不能从一个static内部类的一个对象访问一个外部类对象 4、&和&&的区别 答:&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and) 5、Collection 和Collections的区别 答:Collection是集合类的上级接口,继承与他的接口主要有Set 和List. Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作 6、什么时候用assert 答:assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。一般来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion检查通常是关闭的

JAVA题目附答案

JA V A 题目 1.若有以下代码: int x=5,y=6; If(x++>=y && x >++y) { } 则执行后,X和y的值分别是() A. 5 6 B. 6 6 C. 6 7 D. 7 7 2.字节型数据的取值围是: A) -128 ~ 127 B) -28 -1 ~ 28 C) -255 ~ 256 D) 取决于具体的Java虚拟机 4. class Excise { public void method() { byte a = 127; int x = ++a; int y = a + 1; System.out.println("x=" + x + " y=" + y); } } class TestExcise{ public static void main(String args[]) { Excise o = new Excise (); o.method(); } } A) 输出:x=128 y=128 B) 输出:x=128 y=129 C) 输出:x=-128 y=128 D) 输出:x=-128 y=-127 5.写出下面代码段的运行结果(A) boolean flag = false; if (flag = true) { System.out.println("true"); } else { System.out.println("false"); } A) true B) false C) 出错 D) 没有信息输出 6.执行下面代码会输出什么容?() Boolean b1 = new Boolean(true); Boolean b2 = new Boolean(true); Object obj1 = (Object)b1; Object obj2 = (Object)b2; if (obj1 == obj2) if (obj1.equals(obj2)) System.out.println("a"); else System.out.println("b");

百一测评——Java经典面试题 带答案

职业技能题库&在线云笔试平台https://www.wendangku.net/doc/3d5601559.html, 试卷名称:Java经典面试题带答案 试卷描述:java笔试题目、招聘笔试、微信考试、在线考试 试卷链接:https://www.wendangku.net/doc/3d5601559.html,/store/open/paperInfo/41651 试卷限时:50分 一.单项选择题 每题分值:2.5分 是否题目乱序:是 是否选项乱序:是 是否可回溯:是 难度:中 1.[单选]Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.[单选]下列语句哪一个正确() A.Java程序经编译后会产生machine code B.Java程序经编译后会产生byte code C.Java程序经编译后会产生DLL D.以上都不正确

职业技能题库&在线云笔试平台https://www.wendangku.net/doc/3d5601559.html, 答案:B 3.[单选]下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名 C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 4.[单选]提供Java存取数据库能力的包是() A.java.sql B.java.awt C.https://www.wendangku.net/doc/3d5601559.html,ng D.java.swing 答案:A 5.[单选]下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 6.[单选]执行如下程序代码 a=0;c=0;

职业技能题库&在线云笔试平台https://www.wendangku.net/doc/3d5601559.html, do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环 答案:C 7.[单选]下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{}包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.[单选]下列语句正确的是() A.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象

Java试题及答案

一、单项选择填空(每小题2分,共50分) 1.下列不属于main方法的修饰词的是() A.public B.void C.static D.final 2.Java源程序经过编译后的文件类型是() A.字节码文件 B.可执行文件C.目标文件D.中间文件 3.下列关于运算符的结合性说法正确的是() A.算术运算符和条件运算符都是左结合(即从左至右)算术不一定++ 的前缀和后缀不一样 B.单目运算符是左结合C.关系运算符是左结合 D.赋值运算符是左结合 4.对于同一消息,对象可以产生不同的行为,这称为类的什么特性?() A.继承性B.抽象性C.封装性D.多态性 5.下面哪个是合法的布尔值() A.”false”B.false C.0 D.f 6.下面哪个是Java语言中的关键字?() A.sizeof B.abstract C.InstanceOf D.Native 7.哪种循环在条件表达式被计算之前至少执行循环体语句一次?() A.do-while循环B.for循环C.while循环D.以上都不是 8.以下哪个选项用以确定字符串的长度?() A.size B.length C.max_value D.length() 9.下面的语句哪个是正确的?() A.char=?abc?; B.long l=0xfff; C.float f=0.23 需加上f; D.double=0.7e-3; 10.下列哪个类的声明是错误的?() A.final abstract class A B.final class A C.protected class A D.public class A 11.下面程序段的执行结果是什么?() public class Foo{ public static void main(String[] args){ try{ return;} finally{System.out.println(“Finally!”);} }} A.程序正常运行,但不输出任何结果B.程序正常运行,并输出 Finally C.编译能通过,但运行时会出现例外D.因为没有catch语句块,所 以不能通过编译 12.设a=0,b=-3,则表达式(a>=1)&&++a<=12?b:a的结果为() A.1 B.2 C.0 D.-3 13.Java语言中,下列常量中是字符型常量的为() A.?\0xFFFF?B.?\u?C.?\\?转义字符D.”ABC” 14.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____ 个比特位。()若是字节就是2个

JAVA测试题(三套含答案)

<测试一> 1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=1.3; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4.编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; System.out.println("The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F A.2variable B.variable2 C. _whatavariable

D. _3_ E. $anothervar F. #myvar 6.内部数据类型byte的取值范围是B A.0 - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: System.out.println("zero"); break; case 1: System.out.println("one"); case 2: System.out.println("two"); default: System.out.println("default"); } A.one B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default: System.out.println("default");

java期末选择试题及答案大全

一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0] 7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y C) z > ( y + x ) D) x < y & ! ( x < z ) 12.下列语句序列执行后,i的值是( D )。 int i=16; do { i/=2; } while( i > 3 ); A) 16 B) 8 C) 4 D) 2 13.以下由 for 语句构成的循环执行的次数是( B )。 for ( int i = 0; true ; i++) ; A) 有语法错,不能执行 B) 无限次 C) 执行1次 D) 一次也不执行 14.定义类头时能使用的修饰符是(C )。 A) private B) static C) abstract D) protected 15.设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值, 正确的switch语句是D )。 A) switch (x + y) B) switch ( ch + 1 ) { ...... } { ...... } C) switch ch D) switch ( a + b );

java运用循环编程题及答案

1.编写一个数的阶乘和。eg. Sum=1!+2!+3!+4!+5! public class j1_20 { public static void main(String[] args) { int a,sum,b=0,i; sum=0; for(b=1;b<=5;b++){ a=1; for(i=1;i<=b;i++){ a=a*i; } sum+=a; } System.out.println("1到5的结成和"+sum); } } 结果 2.把一个数组里的数字按照从小到大的顺序排列出来 public class j_sort { public static void main(String[] args) { int a[]=new int[]{12,15,63,56,21,71,91,3,16,43}; for(int i=0;i<10;i++){ for(int j=i+1;j<10;j++){ if(a[i]>a[j]){ int t; t=a[i]; a[i]=a[j]; a[j]=t; } } } System.out.println("从小到大的顺序为:"); for(int i=0;i<10;i++){ System.out.print(a[i]+" "); } } } 结果是

3.输出一个三角形 public class j_triangle1 { public static void main(String[] args) { int a=5,b=5; for(int i=1;i<5;i++){ for(int j=0;j<5-i;j++){ System.out.print(" "); } for(int e=1;e<=i;e++){ System.out.print("@"+" "); } System.out.println(""); } System.out.println("-----------"); for(int i=1;i<5;i++){ for(int j=0;j<5-i;j++){ System.out.print(" "); } for(int e=1;e<2*i;e++){ System.out.print("@"); } System.out.println(""); } } } 结果是

JAVA试题及答案(精致)

选择题 1、JAVA所定义的版本中不包括:( D ) A、JAVA2 EE B、J AVA2 Card C、J AVA2 ME D、JAVA2 HE E、JAVA2 SE 2、下列说法正确的是( A ) A、JAVA程序的main方法必须写在类里面 B、J AVA程序中可以有多个main方法 C、J AVA程序中类名必须与文件名一样 D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括 号)括起来 3、变量命名规范说法正确的是( B ) A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字;

4、下列javaDoc注释正确的是(C) A、/*我爱北京天安门*/ B、//我爱北京天安门*/ C、/**我爱北京天安门*/ D、/*我爱北京天安门**/ 5、为一个boolean类型变量赋值时,可以使用( B )方式 A、boolean = 1; B、b oolean a = (9 >= 10); C、b oolean a="真"; D、boolean a = = false; 6、以下( C )不是合法的标识符 A、STRING B、x3x; C、v oid D、de$f 7、表达式(11+3*8)/4%3的值是( D ) A、31 B、0 C、1

D、2 8、( A )表达式不可以作为循环条件 A、i++; B、i>5; C、b Equal = str.equals("q"); D、count = = i; 9、运算符优先级别排序正确的是(A ) A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、 赋值运算符; B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、 逻辑运算符; C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、 赋值运算符; D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、 逻辑运算符; 10、以下程序的运行结果是:( B ) public class Increment{ public static void main(String args[]) { int a;

java练习题

public class Multipation { public static void main(String[] args) { 定义一个类Student,属性为学号、姓名和成绩;方法为增加记录SetRecord和得到记录GetRecord。SetRecord给出学号、姓名和成绩的赋值,GetRecord通过学号得到考生的成绩。 public class Student { /** *@param args */ private int ID; private String name; private float score; public void SetRecord(int ID,String name,float score){ =ID; =name; =score; } public float getRecord(int ID){ if(ID== return ; else return -1; } public static void main(String[] args) { 编写程序,测试字符串“你好,欢迎来到Java世界”的长度,将字符串的长度转

换成字符串进行输出,并对其中的“Java”四个字母进行截取,输出截取字母以及它在字符串中的位置。 public class StringTest { /** *@param args */ public static void main(String[] args) { 自己设计一个坐标类,能提供以下方法如求当前坐标和其他坐标之间的距离等方法,要求所有变量为私有变量,并提供两个构造函数。 public class XYdistance { private int x; private int y; XYdistance(){ setX(0); setY(0); } public void setX(int x) { = x; } public int getX() { return x; } public void setY(int y) { = y;

Java练习题及答案

Java 练习题答案 一、填空 1、对象的状态和行为是对象的主要属性;前者对应类的变 量,行为又称为对象的操作,对应着类的方法。类的定义包括变量声明和方法声明。 2、要嵌入在HTML文件中运行的程序是Java Applet (Java Application 、Java Applet )。 3、安装JDK后,Java 开发工具在Bin 目录。 4、声明接口的保留字是interface 。 5、类的声明“ public class Test extends Applet implements Runable{} ” 中,定义的类名是Test ,其父类是Applet ;实现了Runable 接口。这个类的源程序必须保存为Test.java (写出包括扩展名的文件名)。 6、一个完整的Java 应用程序由一个或多个类组成;其中Java Application 至少有一个主类,这个类中包含一个名为main 的方法 7、JDK下解释执行Java 的程序是java.exe 。 8、语句如下: int[] c1=int[10]; int[] c2={1,2,3,4,5,6,7,8,9,0}; 数组c1 中的元素有10 个;c2 中的元素有10 个; 已初始化赋 值的是c2 (c1 c2 )。 9、执行完下列程序后i 的值为5

int i=0; while(i<5) { i++; 10、运行下列程序段后,结果 c 的取值为120 int a = 100, b = 20,c; char oper ='+'; switch(oper) { case '+': c = a+b; break; case '-': c = a - b; break; default: c = a * b; break; } 11、为了能使用Java 中已提供的类,我们需要用import 语句来引入所需要的类。语句import java.io.* ;中引入了java.io 包的所有类。 二、选择题 1、属于访问控制的关键字是( D )。 A、static B 、final C、abstract D 、private 2、对成员的访问控制保护最强的是(C ) A、public 、 B、缺省、 C private D protected 3、可用做Java 标识符的是( B )。 A、try B_isYour C 2time D my name

java50道经典逻辑题

題目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 【程序1】 題目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 分析:咋一看不知道如何下手,但是你在草稿纸上写写分析一下,就很快发现其中的规律了package logic; import java.util.Scanner; public class RabbitNum { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("你想知道前几个月的兔子的数量"); int month = in.nextInt(); int[] mon = new int[month]; if(month < 3){ System.out.println("第" + month + "个月有1 对兔子,共2 只"); } else for(int i = 2; i < month; i++){ mon[0] = mon[1] = 1; mon[i] = mon[i - 1] + mon[i - 2]; System.out.printf("第%d 个月有%d 对兔子,共%d 只兔子\n", i + 1, mon[i], 2 * mon[i]); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 分析:如果知道素数是什么,该题就应该不难了 package logic; public class Prime { public static void main(String[] args) { System.out.print("101--200中的素数有:"); for(int i = 101; i <= 200; i++){ if(isPrime(i)) System.out.print(" " + i); } } //isPrime方法用来判断一个数是否是素数private static boolean isPrime(int i) { // TODO Auto-generated method stub for(int j = 2; j <= Math.sqrt(i); j++){ if(i % j == 0) return false; } return true; } } 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。 例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 分析:解决这个题目主要要知道怎么把一个数的各个位上的数拆分出来 package logic; import java.util.Scanner; public class NarcissisticNum { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.print("水仙花数有:"); for(int num = 100; num < 1000; num++){ if(isNarcissisticNum(num)) System.out.println(" " + num); } } //一个判断正整数是否为水仙花数的方法private static boolean isNarcissisticNum(int num) { // TODO Auto-generated method stub int a = num / 100; //分离出百位a int b = (num / 10) % 10; //分离出十位b int c = num % 10; //分离出个位 c int sum = a * a * a + b * b * b + c * c * c; if(sum == num) return true; else return false; } } 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 分析:按步骤实现就可以了(有多种实现方式,以下代码供参考。我也参考了别人的)package logic; import java.util.Scanner; public class PrimeFactorOfInteger { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入一个

相关文档