Java机考200题

更新时间:2023-11-27 16:21:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Java机考试题

一、第一类题 1. 编写程序,从标准输入读入华氏度,将其转换为摄氏度,并在标准输出打印转换结果。 转

换公式为:摄氏度 = (5/9)*(华氏度-32)。

2. 编写程序读入圆柱体的半径和高,计算圆柱的体积,并打印圆柱体的体积。 3. 编写程序读入球的半径,计算球的体积和表面积,并显示结果。 4. 从命令行读入一些参数,打印参数个数和参数列表。

5. 编写程序读入英尺数,转换为米数并显示结果。一英尺等于0.305米。

6. 编写程序将磅转换为千克。程序提示用户输入磅数,转换成千克并显示结果。 一磅等于

0.454千克。

7. 编写一个程序,读入费用与提成率,计算提成与总费用,例如:如果使用者键入10 作为8. 9. 10. 11. 12. 13.

14.

费用,15%作为提成率,计算结果显示1.5作为提成费,11.5作为总费用。

(求一个整数各位的和)编写程序读入0到1000之间的一个整数,并将其各位数字加起来。例如整数932,各位数字之和为14。

(将大写字母转换为小写字母)编写一个方法将大写字母转换为小写字母。

(从ASCII求出对应的字符)编写程序读入一个ASCII码(从1到128的整数)并显示它表示的字符。 例如,如果用户输入97,程序显示字母a。

(判断三角形〉编写程序输入三角形的三个边,判断输入是否有效。 (判断一个数是否为偶数)编写程序读入一个整数并判断其是否为偶数。

编写程序输入一个整数,判断其是否能被5和6整除,是否能被5或6整除,是否能被 5或6整除但不能被5和6整除。

编写程序,读入资金额(现值)、年利率和年数,显示终值(将来的资金额),计算公式如下: 终值 = 现值 * (1+年利率)年数

15 (三个整数排序)编写程序对三个整数排序。整数由输入对话框读入,并分别存入变量num1、num2 和num3,对它们进行排序,使得num1<=num2<=num3。

16 (计算三角形的周长)编写程序,读入三角形的三边,如果输入有效,计算它的周长;否则,显示 输入无效。如果任意两边的和大于第三边,输入有效。

17 (查找当月的天数)编写程序,提示用户输入年和月,而后显示该月的天数。例如,如果用户 输入2000年2月时,应该显示2000年2月有29天。如果用户输入2005年3月时,应该显示2005年3 月有31天。

18 (统计正数和负数的个数并计算这些数的平均数)编写程序,读入个数不确定的整数,求出读人的 正数和负数个数,并计算它们的总和及平均值,0不参与计数。当输入为0时,程序结束。将平均值作为一个浮点数来显示。(例如,如果输入1、2和0,平均值应当为1.5。)

19 (千克转换成磅)编一个显示下列表格的程序(注意,1千克为2.2磅):

千克 磅 1 2.2

3 6.6

... 197 433.4 199 437.8

20 (英里转换成千米)编一个显示下列表格的程序(注意,1英里为1.609千米):

英里 千米 1 1.609 2 3.218

...

9 14.481 10 16.09

21 (千克与磅互换〉编写一个程序,并排显示下列两个表格(注意,1千克为2.2磅): 千克 磅 磅 千克 1 2.2 20 9.09 3 6.6 25 11.36 ...

197 433.4 510 231.82 199 437.8 515 234.09

22 (英里与千米互换)编写一个程序,并排显示下列两个表格(注意,1英里为1.609千米):

英里 千米 千米 英里 3 1.609 20 12.430 4 3.218 25 15.538

... 9 14.481 60 37.290 10 16.09 65 40.398

23(计算将来的学费)假设今年某一大学的学费为$10000,学费的年增长率为5%。使用循环语句编写程序,计算10年内的学费。

24 (查找最高分)编写程序,提示用户输入学生的数量及每个学生的名字和得分,而后显示最高分的学生。

25 (查找最低分)编写程序,提示用户输入学生的数量及每个学生的名字和得分,而后显示最低分的学生。

26 编写一个程序,产生10个0到100以内的随机浮点数,计算是个数的平均值,显示平均值,分别显示大于和小于平均值的数的个数。 27 (查找两个最高分)编写程序,提示用户输人学生的数量及每个学生的名字和得分,而后显

示获得最高分的学生和第二高分的学生。

28 (查找能被5和6整除的数〉编写程序,显示从100到1000之间所有能被5和6都整除的

数,每行显示 10个。

29(查找被5或6整除,但不能都整除的数)编写程序,显示从100到200之间所有能被5

或6整除,但不 能同时整除的数,每行显示10个数。

30 (求满足n2>12000的最小数n)用while循环求n2大于12 000的最小数n。 31 (求满足n3<12000的最大数n)用while循环求n3小于12 000的最大数n。

32 (显示ASCII字符表)编写一个程序,打印八字符表中的128个字符。每行打印10个字

符。

33 (求最大公约数)用循环求两个整数n1和n2的最大公约数,首先求n1和n2的最 小值d,然后依次检验d,d-1,d-2,…,2,1是否是n1和n2的公约数。这样所求的第一个公约数 就是n1和n2的最大公约数。

34 (求整数的因子)编写程序,读入一个整数显示它的所有素数因子。例如,若输入整数为120,输出应为2,2,2,3,5。 35 编程打印下面的图案:

36 编程打印下面的图案:

37编程打印下面的图案:

38编程打印下面的图案:

39 编程打印下列图案:

40 打印2到1000之间的所有素数,每行显示8个素数。

41 编写程序,用户输入贷款总数及以年为单位的贷款期限,以1/8为递增量,显示5%到8%的利率下每月支付额和总偿还额。假设输入贷款总量为10000,还贷期限为5年,所显示的输出应该如下:

贷款总额:10000 年数:5

利率 月支付额 总偿还额

5% 188.71 11322.74 5.125% 189.28 11357.13 5.25% 189.85 11391.59 ...

7.85% 202.16 12129.97 8.0% 202.76 12165.83

42 计算当n=50000时,下面算式的和:

43 计算下列级数的和:

44 用下列级数计算π的近似值(显示i=10000,20000,…,100000时π的值):

45 用下列级数计算e的近似值(显示i=10000,20000,…,100000时e的值):

46 编写程序显示21世纪(2000年到2100年)的所有闰年,每行10个。

47 编写程序,提示用户输入年号,和该年第一天是星期几,显示该年每月第一天是星期几。 48 编写程序,提示用户输入年号,和该年第一天是星期几,然后显示该年的月历。例如,输入年号2005,以及2005年1月1日是星期六的6,程序显示如下:

49 使用下述方法头,编写一个将大写字母转换成小写字母的方法: public static char upperCaseToLowerCase(char ch) 50使用下述方法头编写方法,计算一个整数各位数字之和: public static int sumDigits(long n) 51编写一个类,包含如下两个方法:

public static double celsiusToFahrenheit(double celsius) public static double fahrenheitToCelsius (double fahrenheit) 转换公式为: 华氏度=(9.0/5)*摄氏度+32 并编写一个测试程序,调用这两个方法。

52 用如下方法编写一个程序反序显示一个整数,并测试: public static void reverse(int number)

53用如下方法返回一个整数的反序号,并测试: public static int reverse(int number)

54 编写一个类,使用下列方法求两个给定正整数的最大公约数: Public static int gcd(int m,int n)

编写一个测试程序计算gcd(24,16)和gcd(255,25)。 55 用如下方法编写三个数字的增序排序,并编写测试程序:

public static void sort(double num1, double num2, double num3)。 56 用如下方法编写英尺和米的转换程序,编写程序测试。 /** Converts from feet to meters */ public static double footToMeter(double foot) /** Converts from meters to feet */ public static double meterToFoot(double meter) 公式:1米=0.305英尺 57 编写一个方法显示如下图案: 1 2 1

3 2 1 ...

n n-1 ... 3 2 1 方法申明如下:

public static void displayPattern(int n)

58使用下述方法头,编写一个方法打印字符: public static void printChars(char ch1, char ch2, int numberPerLine) 该方法打印从ch1到ch2之间的字符,每行按指定个数打印。编写测试程序,每行打印10个从‘A’ 到‘Z’的字符。 59 写一个形如下述的方法判断一个数是否为素数,并编写程序打印1000以内的素数,每行

打印10个。 ? public static boolean isPrime(int num) 60 编写一个方法计算下面的序列:

并编写测试程序,显示下表:

i m(i) 2 0.5 3 1.1667 ...

19 15.4523

20 16.4023

61 编写一个方法计算下面的序列:

62 编写一个方法显示n*n的矩阵,矩阵的每个元素随机产生为0或者1,并写一个测试程序打印3*3的矩阵,方法头如下: public static void printMatrix(int n)

63 编写一个程序显示20以内的平方根表,显示如下:

Number SquareRoot 0 0.0000 2 1.4142 ...

18 5.2426 20 5.4721

64 编写一个MyTriangle的类,包含两个方法: /** Returns true if the sum of any two sides is

* greater than the third side. */

public static boolean isValid(

double side1, double side2, double side3)

/** Returns the area of the triangle. */ public static double area(

double side1, double side2, double side3)

面积计算公式:

编写一个测试程序,读入三角形三边的值,若输入有效,则计算面积,否则显示输入无效。 65 编写一个程序打印0到360度的正弦和余弦值表,每个10度打印一个,显示表格如下:

Degree Sin Cos 0 0.0 1.0 10 0.1736 0.9848 ...

350 -0.1736 0.9848 360 0.0 1.0

66 打印10个0到1.0之间的的均匀分布的随机数。

67 生成0到1000之间的10个随机整数,计算他们的平均值。 68 生成0到1000之间的10个随机整数,计算他们的方差。

方差公式:

69 用如下迭代法求一个数num的平方根: nextGuess = (lastGuess + (num / lastGuess)) / 2 70 生成a-z之间的随机字符10个,并打印。

71 编写一个非递归的求阶乘方法,并编写程序测试该方法。

72 采用递归的方式编写一个求阶乘的方法,并编写测试程序测试该方法。 73编写一个非递归方法计算斐波那契夫数,并编写程序测试该方法。

74 采用递归的方式编写一个计算斐波那契夫数的方法,并编写程序测试该方法。 75 用递归的方式编写计算最大公约数的方法,并编写程序测试该方法。 76 用递归的方法求一个整数各位数字之和,并编写程序测试该方法。 77 编写程序打印当前时间。 78 编写程序打印当前日期。

79 编写一个将毫秒转换到时分秒的函数,其头申明如下:

public static String convertMillis(long millis)

该方法返回一个形如 hours:minutes:seconds的串,例如: convertMillis(5500) 返回 串

0:0:5, convertMillis(100000) 返回串 0:1:40, convertMillis(555550000) 返回串 154:19:10.

二、第二类题

80 编写递归的方法计算:

81编写递归的方法计算:

82编写递归的方法计算:

83 编写程序,读入是10个数到数组中,计算他们的平均值,统计多少个数字在平均值之上。 84编写程序,读入10个整数并按与读入相反的顺序显示出来。

85编写一个程序,读入数目不确定的考试分数,并且判断有多少个分数高于或等于平均 分,有多少个分数低于平均分。输人一个负数标志输入结束,假设最高分为100。 86编写一个程序,使它能够读入10个数并且显示其中互不相同的数。

87编写一个程序,生成0~9之间的100个随机整数并且显示每一个数的个数。 88编写两个重载方法,返回一个数组的平均数,它们具有如下的方法头: public static int average(int[] array); public static double average(double[] array); 用{1, 2, 3, 4, 5, 6} 和 {6.0, 4.4, 1.9, 2.9, 3.4, 3.5}来测试方法。

89编写一个方法,求出一个整数数组中的最小元素。用{1, 2, 4, 5, 10, 100, 2, –22}来测试方法。

90编写一个方法,求出一个整数数组中最小元素的下标。如果这样的元素个数 大于1,则返回最小数的下标。用{1, 2, 4, 5, 10, 100, 2, –22}来测试方法。 91 将一个数组反序后拷贝到一个新的数组。

92 编写一个数组的选择排序方法。并用{1, 2, 4, 5, 10, 100, 2, –22}来测试方法。

93 编写一个数字的冒泡排序方法,并用{1, 2, 4, 5, 10, 100, 2, –22}来测试方法。 94 用插入排序算法编写一个排序方法,并用{1, 2, 4, 5, 10, 100, 2, –22}来测试方法。 95 编写一个方法,其参数个数可变,假定参数都是double,计算传入的参数的平均值。 96 编写一个程序,提示输入学生数量、学生姓名和他们的成绩,并按照成绩的 降序来打印学生的姓名。

97编写一个方法,求整数矩阵中所有整数的和。用{{1, 2, 4, 5}, {6, 7, 8, 9}, {10, 11, 12, 13}, {14, 15, 16, 17}}来测试方法。

98编写一个方法,求整数矩阵中主对角线上所有整数的和。用{{1, 2, 4, 5}, {6, 7, 8, 9}, {10, 11, 12, 13}, {14, 15, 16, 17}}来测试方法。

99假定每个雇员每周工作的小时数存储在一个二维数组中。每行用七列记录一个雇员七天的工作时间。例如,下列数组存储了8个雇员的工作时间。编写一个程序,按照总工时降序的方式显示雇员和他们的总工时。

100编写两个矩阵相加的方法。方法头如下: public static int[][] addMatrix(int[][] a, int[][] b)

101编写两个矩阵相乘的方法。方法头如下: public static int[][] multiplyMatrix(int[][] a, int[][] b)

102 编写程序,在三子棋棋盘(3x3格)上随机地填入0和1,打印棋盘,并找出全是0 (或1)的行、列或对角线。使用二维数组表示三子棋棋盘。 103 (西洋跳棋盘)编写程序,在8x8的棋盘中随机地填入0和1,打印棋盘,并找出全是0 (或

1)的行、列或对角线。使用二维数组表示棋盘。

104 (玩三子棋游戏)在三子棋游戏中,两个游戏者在3x3网格中轮流作标记,一个人用X,

另一 个人用0。如果一个游戏者在网格的水平、垂直或对角线方向上作了三个连续的标记,游戏就以这 个游戏者得胜而告终。当网格的所有单元格都填满了标记而没有一个游戏者获胜,就出现了平局 (没有优胜者)。编写一个玩三子棋游戏的程序,如下所示: 程序提示第一个游戏者输入X标记,接着提示第二个游戏者输入0标记。每输入一个标记后,程序刷新棋盘并显示游戏的状态(获胜、平局还是未结束)。为了输入标记,通过输入对话框提示用户输入标记的行和列坐标。

105 编写方法计算两个整数n1,n2的最小公倍数(提示:最小公倍数=n1*n2/gcd(n1,n2)),

并用120和150来测试方法。

106 编写一个名为Rectangle的类表示矩形,他有两个双精度浮点型私有属性:width、height,一个静态字符串型类属性color,一个默认长和宽都为1的的构造函数,一个指定长和宽的构造函数,公有的求面积和周长的方法。 107 利用System.currentTimeMillis()方法测试一个计算100阶双精度浮点矩阵乘法花费的执行时间。

108 编写一个二维的平面点类Mypoint,有双精度型x,y属性,一个距离方法头如下: double distance(MyPoint secendPoint)

另外一个静态距离方法头如下:

double distance(MyPoint p1,MyPoint p2) 109 编写一个方法判断一个字符串是否为回文串。

110编写一个方法判断一个字符串是否为回文串,忽略大小写。 111 编写一个方法判断一个字符串是否为另一个串的子串。

112使用下列方法头编写—个方法,求指定字符在字符串中出现的次数: public static int count(String str, char a)

113使用下列方法头编写一个方法,统计每个数字在字符串中出 现的次数。 public static int[] count(String s) 编写main方法,显示对字符串\的统计结果。

114使用下列方法头编写一个方法,统计字母在字符串中出现的个数。 public static int countLetters(String s) 编写main方法调用countLetters(\并显示结果。 115 编写一个方法将十六进制的字符串转换为十进制整数。方法头如下:

public static int parseHex(String hexString) 使用十六进制串ABC 和10A来检测。

116 编写一个方法将二进制的字符串转换为十进制整数,方法头如下: public static int parseBinary(String binaryString) 使用二进制串 11111111 测试该方法。

117 编写一个方法,将十进制数转换成十六进制字符串,方法头如下: public static String convertDecimalToHex(int value) 使用十进制数298和9123测试该方法。

118 使用下述方法头编写一个方法,返回排好序的字符串: public static String sort(String s) 例如:sort(“acb”)返回abc; 119 编写一个方法,将十进制数转换为二进制数的字符串,方法头如下: public static String convertDecimalToBinary(int value) 使用十进制数298和9123测试该方法。

120 (变位词)编写一个方法检测两个单词是否互为变位词。如果在不计顺序的情况下两个单词包含完全相同的字母,则这两个词互为变位词。例如\互为变位词。方法头如下所示: public static boolean isAnagram(String s1, String s2)

调用isAnagram(\, isAnagram(\, 和 isAnagram(\来测试。

121编写程序,使用空格和标点符号作为定界符,从字符串中提取单词。字符串从输人 对话框中读入。

122编写程序,从输入对话框中读入一个字符串,该串是由空 格分割的双精度值组成的,显示这些值的和。

123使用Scanner类从键盘读入空格分割的数,显示它们的和与平均值。 124 从程序命令行参数读入一个串,判断该串是否互为回文。

125 编写程序,传给main方法一个字符串,显示该字符串中大写字母的个数。

126 编写一个抽象的二维几何体类GeometricObject,其中定义周长和面积方法,和形体颜色属性,再编写三角形类其继承GeometricObject类,有三个边长属性,编写矩形类继承GeometricObject类,有长和宽属性。

127编写一个抽象的二维几何体接口Geometricinterface,其中定义周长和面积方法,再编写三角形类其实现Geometricinterface接口,有三个边长属性,编写矩形类继承Geometricinterface接口,有长和宽属性。

128编写一个抽象的二维几何体类GeometricObject,其中定义周长和面积方法,和形体颜

色属性,并实现Comparable接口(规定比较是比较面积大小),再编写三角形类其继承GeometricObject类,有三个边长属性,编写矩形类继承GeometricObject类,有长和宽属性。用max方法编写测试程序比较一个三角形和一个矩形的大小。

129编写一个抽象的二维几何体接口Geometricinterface,其中定义周长和面积方法,并实

现Comparable接口(规定比较是比较面积大小),再编写三角形类其实现Geometricinterface接口,有三个边长属性,编写矩形类继承Geometricinterface接口,有长和宽属性。

130编写一个抽象的二维几何体类GeometricObject,其中定义周长和面积方法,和形体颜

色属性,并实现Comparable接口(规定比较是比较面积大小),再编写三角形类其继承GeometricObject类,有三个边长属性,编写矩形类继承GeometricObject类,有长和宽属性。创建大小为10的矩形数组,求最大的矩形面积。

131 实现一个有理数Rational类,并用Rational类计算 1/2+2/3+?+99/100。 132 编写程序打印1到1000的整数中,满足x2+y2=z2的解。

133 编写方法计算从12+22+32+?+n2的和。 134 编写方法计算从13+23+33+?+n3的和。

135 编写程序向ArrayList中添加10个随机整数,然后遍历ArrayList打印这些整数。 136 用泛型的方式向ArrayList中添加10个随机整数,然后遍历ArrayList打印这些整数。 137 编写程序向Vector中添加10个随机整数,然后遍历Vector打印这些整数。

138 用泛型的方式向Vector中添加10个随机整数,然后遍历Vector打印这些整数。 139 编写程序向HashMap中添加字符串为key和值的10个条目,然后遍历打印其内容。 140 用泛型的方式向向HashMap中添加字符串为key和值的10个条目,然后遍历打印其内

容。

141 (使用FlowLayout布局管理器)编写一个满足下图要求的程序:

142 (使用GridLayout布局管理器)编写窗口程序其上面放置2行3列的按钮。 143编写程序显示一个3x3的网格,如下图所示:

144 编写一个GUI程序,窗口上画从(10,10)到(100,100)的红色线段; 145编写一个GUI程序,窗口上画从(10,10)到(100,100)的蓝色线段;

146编写一个GUI程序,窗口上画圆心在(100,100)半径为50的黄色线条的园; 147编写一个GUI程序,窗口上画圆心在(100,100)半径为50的填充为绿色的园; 148 编写一个GUI程序,窗口上画一个矩形。

149编写一个GUI程序,窗口上画一个填充为红色的矩形。 150编写一个GUI程序,窗口上画一个1/4圆弧。

151 编写一个GUI程序,窗口上画f(x)=x2的曲线。 152编写一个GUI程序,窗口上画一个1/4扇形。

153编写一个GUI程序,窗口上画一个填充为蓝色的1/4扇形。 154编写一个GUI程序,窗口上画一个圆角矩形。

155编写一个GUI程序,窗口上画一个填充为红色的圆角矩形。

三、第三类题

156 编写一个GUI程序, 窗口上放置一个按钮,按钮按下时在命令行显示按钮信息,要求

frame类实现actionPerformed接口来编程。 157 编写一个GUI程序,窗口上放置一个按钮,按钮按下时弹出对话框(要求用匿名内部类)。 158编写程序,按下鼠标键时显示鼠标的位置,如下图所示。

159编写程序,创建一个用户界面,其上有OK和Cancel两个按钮 以及一个显示信息的信息

面板。点击OK按钮时,显示信息\,点击Cancel按

钮时显示信息\,如下图所示:

编写程序显示一个面板的背景色,当按下鼠标键时背景色为黑色,松开时背景色为白色。 161编写程序,从键盘读取输入字符并把它放在鼠标所指的位置。 162 编写一个显示闪烁标签的程序,使该程序能够独立运行。 163编写一个GUI程序,窗口上显示Hello Java!。

164编写一个程序,进行加、减、乘、除运算,如下图所示:

160

165编写一个Applet,其上面显示Hello Java!。 166编写一个Applet,其上面显示传入的参数。 167 编写一个GUI程序,在其上随机显示100个点。

168 编写一个GUI程序,在其上面显示大号红色汉字“你好!”。

169 编写一个程序从命令行读取一个整数,使用异常捕获输入格式错误。

170 编写一个程序测试当前目录下是否存在文件file.txt,若存在打印其文件大小。

171 编写一个程序随机产生100个0到1000的整数,以文本方式写入文件data.txt,每个10个一行,两个数之间用空格分隔。

172 从159题产生的数据文件中读入100个数到数组中,计算平均值。

173编写一个程序随机产生100个0到1000的整数,以二进制格式(dataoutputstream)写

入文件data.dat中。

174从161题产生的数据文件中读入100个数到数组中,计算平均值。 175 把当前时间日期以对象的形式写入到date.obj中。 176 从date.obj中读入时间日期。

177 以随机读写方式向文件random.dat写入从1到100的100个整数,随后把第20个写入

的整数改为500写入文件。

178 编写程序统计文本文件的空格个数。 179 编写程序统计文本文件的字符总数。

180 编写程序,用文本文件runTimes.txt记录程序运行的次数。 181 把字符串以UTF8方式写入文件string.dat。 182 从文件string.dat读入utf8字符串。

183 编写一个两个线程,一个线程打印字符‘a’100次,另一个打印数字‘1’100次。

184 在mysql中创建一个student数据库,在student库中创建一个表studentInfo,两个字段,(id int,name vchar(20)),id 为主键,编写程序,向studentInfo表插入100行数据,再把插入的数据读取出来。 185 使用UDP协议编写网络聊天程序。

186 编写基于TCP的客户程序,连接到本机6000端口,从命令行读入字符串发送到服务器,

并接受服务器消息。

187 编写基于TCP的服务器程序,在端口6000上监听到连接请求后,创建一个新的线程,

会送客户端发送过来的信息。

188 使用定时器编写一个数字时钟的程序。

189 使用线程睡眠的方式编写一个数字形式时钟程序。 190 编写一个GUI程序,使用定时器实现模拟时钟。 191 编写一个GUI程序,使用线程睡眠实现模拟时钟。 192 编写一个程序显示f(x)=sin(x)曲线。 193 编写一个程序显示f(x)=cos(x)曲线。 194 编写一个程序显示围棋棋盘。 195 编写一个程序显示中国象棋棋盘。 196 编写一个程序显示国际象棋棋盘。

197 编写一个拷贝文件的程序,文件命从命令行参数传入。 198 编写一个把图片文件浏览程序。

199 编写以幻灯片放映方式放映指定目录下的所有图片文件。 200 编写一个播放音乐的Applet。

本文来源:https://www.bwwdw.com/article/wfet.html

Top