文档库 最新最全的文档下载
当前位置:文档库 › JAVA基本程序练习题(1,2)

JAVA基本程序练习题(1,2)

JAVA基本程序练习题(1,2)
JAVA基本程序练习题(1,2)

JAVA基本程序练习题(一)

【程序1】

题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。

【程序2】

题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高

于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?

程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。

【程序3】

题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。

【程序4】

题目:输入某年某月某日,判断这一天是这一年的第几天?

程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。

【程序5】

题目:输入三个整数x,y,z,请把这三个数由小到大输出。

程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。【程序6】

题目:用*号输出字母C的图案。

程序分析:可先用'*'号在纸上写出字母C,再分行输出。

【程序8】

题目:输出9*9口诀。

程序分析:分行与列考虑,共9行9列,i控制行,j控制列。

【程序9】

题目:要求输出国际象棋棋盘。

程序分析:用i控制行,j来控制列,根据i+j的和的变化来控制输出黑方格,还是白方格。【程序11】

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....

【程序12】

题目:判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,

则表明此数不是素数,反之是素数。

【程序13】

题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

【程序14】

题目:将一个正整数分解质因数。例如:输入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的值,重复执行第一步。

【程序15】

题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

程序分析:(a>b)?a:b这是条件运算符的基本例子。

【程序16】

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。

程序分析:利用辗除法。

【程序17】

题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

【程序18】

题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

程序分析:关键是计算出每一项的值。

【程序19】

题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。

【程序20】

题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

【程序21】

题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。程序分析:采取逆向思维的方法,从后往前推断。

【程序22】

题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。

【程序23】

题目:打印出如下图案(菱形)

*

***

******

********

******

***

*

程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重for循环,第一层控制行,第二层控制列。

【程序24】

题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。程序分析:请抓住分子与分母的变化规律。

【程序25】

题目:求1+2!+3!+...+20!的和

程序分析:此程序只是把累加变成了累乘。

【程序26】

题目:利用递归方法求5!。

程序分析:递归公式:fn=fn_1*4!

【程序27】

题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

【程序28】

题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。

【程序29】

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

程序分析:学会分解出每一位数。

【程序30】

题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

程序分析:同29例

【程序31】

题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。

程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。

【程序36】

题目:求100之内的素数

【程序37】

题目:对10个数进行排序

程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。

题目:求一个3*3矩阵对角线元素之和

程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。

【程序39】

题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。

【程序40】

题目:将一个数组逆序输出。

程序分析:用第一个与最后一个交换。

【程序54】

题目:取一个整数a从右端开始的4~7位。

程序分析:可以这样考虑:

(1)先使a右移4位。

(2)设置一个低4位全为1,其余全为0的数。可用~(~0<<4)

(3)将上面二者进行&运算。

【程序56】

题目:画一个奥运五环标志,学用circle画圆形。

【程序57】

题目:画一个五角星,学用line画直线。

【程序58】

题目:画图,学用rectangle画方形。

【程序61】

题目:打印出杨辉三角形(要求打印出10行如下图)

程序分析:

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

【程序66】

题目:输入3个数a,b,c,按大小顺序输出。

【程序67】

题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

【程序68】

题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数

【程序69】

题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。

【程序70】

题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。

题目:编写input()和output()函数输入,输出5个学生的数据记录。

【程序72】

题目:创建一个链表。

【程序73】

题目:反向输出一个链表。

【程序74】

题目:连接两个链表。

【程序76】

题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n。

【程序79】

题目:字符串排序。

【程序80】

题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了

一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,

问海滩上原来最少有多少个桃子?

【程序81】

题目:809*??=800*??+9*??+1 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。

【程序82】

题目:八进制转换为十进制

【程序83】

题目:求0—7所能组成的奇数个数。

【程序84】

题目:一个偶数总能表示为两个素数之和。

【程序85】

题目:判断一个素数能被几个9整除

【程序86】

题目:两个字符串连接程序

【程序88】

题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。

【程序89】

题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。

【程序96】

题目:计算字符串中子串出现的次数

【程序97】

题目:从键盘输入一些字符,逐个把它们送到磁盘上去,直到输入一个#为止。

题目:从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以!结束。

【程序99】

题目:有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件C中。

【程序100】

题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"stud"中。

JA V A基本程序练习题(二)

1、本程序从键盘输入一个5*5整型数组赋值,找出其中的最小值并显示出来。

2、本程序从键盘输入10个整数存入一数组中,然后将该数组中的各元素按ni序存放后显示出来。

3、本程序演示计算一维数组中所有元素的平均值。

4、本程序演示输入100个整型数据,找出其中的最大值并显示出来。

5、本程序演示从键盘输入x的值,计算并打印下列分段函数的值。

y=0(x<60)

y=1(60<=x<70)

y=2(70<=x<80)

y=3(80<=x<90)

y=4(x>=90)

6、本程序演示一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

7、本程序演示输入三个整数x,y,z,请把这三个数由小到大输出。

8、本程序演示输出9*9口诀。

9、本程序演示判断101-200之间有多少个素数,并输出所有素数。

10、本程序演示打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

11、本程序演示将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

12、本程序演示输入两个正整数m和n,求其最大公约数和最小公倍数。

13、本程序演示输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

14、本程序演示一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。

15、本程序演示猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

16、本程序演示打印出如下图案(菱形)

*

***

******

******

***

*

17、本程序演示求1+2!+3!+...+20!的和

18、本程序演示一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

19、本程序演示求100之内的素数

20、本程序演示对10个数进行排序

21、本程序演示编一个函数fun(String str),函数的功能是把字符串中的内容逆置。例如:字符串中原有的内容为:abcdefg,则调用该函数后,串中的内容为:gfedcba。

22、本程序演示实现矩阵(3行3列)的转置(即行列互换)。

23、本程序演示编一个函数fun(int *a,int n,int *odd,int *even),函数的功能是分别求出数组中所有奇数之和以及所有偶数之和。形参n给了数组中数据的个数:利用指针odd返回奇数之和,利用指针even返回偶数之和。

例如:数组中的值依次为:1,8,2,3,11,6;则利用指针odd返回奇数之和24;利用指针even返回偶数之和8。

24、要求程序的功能是:把20个随机数存入一个数组,然后输出该数组中的最小值。其中确定最小值的下标的操作在fun函数中实现,请给出该函数的定义。

25、请编一个函数float fun(double h),函数的功能是对变量h中的值保留2位小数,并对第三位进行四舍五入(规定h中的值为正数)。

例如:h值为8.32433,则函数返回8.32;h值为8.32533,则函数返回8.33。

26、编写函数fun,函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。

例:若程序执行时,输入字符串为:turbo c and Borland c++,从键盘上输入字符:n,则输出后变为:turbo c ad borlad c++,如果输入的字符串不存在,则字符串照原样输出。27、请编写一个unsigned fun(unsigned w),w是一个大于10的无符号整数,若w是n(n>=2)位的整数,函数求出w的后n-1位的数作为函数值返回。

例如:w值为5923,则函数返回923;w值为923则函数返回23。

28、编写函数int fun(int lim,int aa[MAX]),该函数的功能是求出小于lim的所有素数并放在aa数组中,该函数返回所求出素数的个数。

29、请编写函数fun,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。

30、请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。例如,原来的字符串为CEAedca,排序后输出为CedcEAa。

31、请编一函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中,二维数组中的数已在主函数中赋予。

32、写一个函数,从传入的num个字符串中找出最长的一个字符串,并通过形参指针max 传回该串地址。(注意:用****作为结束输入的标志。)

33、请编一个函数fun,其中n所指存储单元中存放了数组中元素的个数。函数的功能是:删除所有值为y的元素。数组元素中的值和y的值由主函数通过健盘读入。

34、编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数。例如,假定输入的字符串为:asd asasdfg asd as zx67 asd mklo,子字符串为:as,则应输出6。

35、请编写一个函数int fun(int x),它的功能是:判断整数x是否是同构数。若是同构数,函数返回1;否则返回0。

所谓“同构数”是指这样的数,它出现在它的平方数的右边。例如:输入整数5,5的平方数是25,5是25中右侧的数,所以5是同构数。x的值由主函数从健盘读入,要求不大于100。

36、请编写函数fun,函数的功能是:在字符串中所有数字字符前加一个$字符。

例如,输入:A1B23CD45,则输出为:A$1B$2$3CD$4$5。

37、请编一个函数fun(char *s),函数的功能是把字符串中所有的字符前移一个位置,串中的第一个字符移到最后。

例如:原有的字符串为:Mn.123xyZ,则调用该函数后,串中的内容为:n.123xyZM。38、请编写函数fun,函数的功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。

例如,若输入:17,则应输出:9和4 6 8 9 10 12 14 15 16。

39、请编一个函数fun(char *s),函数的功能是把字符串中所有的字母改写成该字母的下一个字母,最后一个字母z改写成字母a。大写字母仍为大写字母,小写字母仍为小写字母,其他的字符不变。

例如:原有的字符串为:Mn.123zyZ,则调用该函数后,串中的内容为:No.123yzA。40、请编写函数fun,函数的功能是:将s所指字符串中、下标为奇数位置上的大写字母转换为字母序列中的下一个小写字母;若该位置上是小写字母,则不转换;若该位置上是大写字母Z,则仅转换成小写字母z。

例如,输入:ABCdxZZZ,则输出为:AcCdXzZz。

41、程序定义了N*N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:给数组周边元素置0值。

42、请编写函数fun,它的功能是:求出ss所指字符串中、指定字符的个数,并返回此值。例如:若输入字符串:123412132,输入字符为:1,则输出:3。

43、程序定义了N*N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。

44、编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat)。

例如,分别输入下面两个字符串:

FirstSrting—

SecondString

程序输出:

FirstString—SecondString

45、程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]),函数的功能是:使数组第一列元素中的值与最后一列元素中的值对调、第二列元素的值与倒数第二列中的值对调、……、其他依次类推。

46、请编写函数fun,函数的功能是:实现B=A+A’,即把矩阵A加上A的转置,存放在矩阵B中。计算结果在main函数中输出。

47、程序序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]),函数的功能是:使数组第一行元素中的值与最后一行元素中的值对调、第二行元素的值与倒数第二行中的值对调、……、其他依次类推。

48、m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人数作为函数值返回。

例如,当score 数组中的数据为:10、20、30、40、50、60、70、80、90、时,函数返回的

人数应该是4,below中的数据应为:10、20、30、40。

49、程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]),函数的功能是:使数组左下半三角元素中的值全部置成0。

50、请编写函数fun,经的功能是:求出1到1000之内能被7或11整除、但不能同时补7和11整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。

51、程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]),函数的功能是:使数组右上半三角元素中的值全部置成0。

52、编写函数void fun(int x,int pp[],int *n),它的功能是:求出能整除x且不是偶数的各整数,并放在pp所指的数组中,这些除数的个数通过形参n返回。

例如,若x 中的值为:30,则有4个数符合要求,它们是1,3,5,15。

53、程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N],int n),函数的功能是:使数组右上半三角元素中的值乘以m。

54、编写一个函数void fun(char *tt,int pp[]),统计在tt字符串中’a’到’z’26个字母各自出现的次数,并依次放在pp所指数组中。

例如,当输入字符串:abcdefgabcdeabc后,程序的输出结果应该是:

3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

55、程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N],int n),函数的功能是:使数组左下半三角元素中的值乘以n。

56、函数fun的功能是:将两个两位数的整数a、b合并形成一个整数放在c中。合并的方式是:将a的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c 数的个位和百位上。

例如:当a=45,b=12。调用该函数后,c=4251

57、请编写一个函数void fun(int m,int k,int xx[]),该函数的功能是:将大于整数m且紧靠m 的k个素数存入xx所指的数组中。

例如,若输入17,5,则应输出:19,23,29,31,37。

58、已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。已给出函数的首部,请完成该函数。

59、请编写一个函数void fun(char a[],int k,int n),其功能是:删除字符串中指定下标开始的n 个字符。其中,a指向字符串,k中存放指定的下标。

例如,字符串内容为:Hellollo World!,k中值为:5,n中的值为:3,则调用该函数的结果为:Hello World!。

60、已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。

61、在本题中要注意使k所指的存储单元的值变为最大值元素的下标(不能用k=&i),另外由于用t返回数组元素个数最后要让其所指的存储单元的值增加1。

62、本题要求删除下标为奇数、同时ASCII值也为奇数的字符反过来想就是要将不标为偶数或ASCII值为偶数的字符留下并放到t数组中。在看类似题型时要注意题中是否用了“同时”两个字。本题采用的就是后一种思编程方式。

63、本题采用了双重循环的方式,其中内层循环用于算出每一加项的分母。用这方式较好理解但程序比较长,其中还要注意每次都要给p重新赋0.0。此外,亦可用一个循环将其做出。

64、本程序演示将一个数组逆序输出。

65、本程序演示计算1-1/2+1/3-1/4-...+1/99-1/100的值,并显示出来。

66、本程序演示计算1+1/2+1/4+...+1/100的值,并显示出业。

67、本程序演示从键盘输入100个字符,并统计其中小写字母的个数.

68、本程序演示从键盘输入100个字符,分别统计其中字母(不区分大、小写)、数字字符和其它字符的个数。2002.1.23 19:21

69、本程序演示从键盘输入年号和月号,计算这一年的这一月共有几天.

70、本程序演示打印出杨辉三角形(要求打印出10行如下图)

[程序分析]

1

1 1

1 2 1

1 3 3 1

14 6 4 1

151010 5 1

Java语言程序设计-实验1

Java 语言程序设计习题1 p1.使用Eclipse: 1)打开Eclipse,File->new->Java project 2)Project name 写上“学号_姓名”(重要!),点击Finish。 3)鼠标右击左侧出现的Project文件,new->class

4)name栏写上习题名称,如创建的是主函数,勾上public void static main选项。 5)输入Java代码。 6)鼠标右击project文件下的***.java文件,run as->Java Application,或单击按钮。7)下侧console窗口将显示运行结果。

p2.在console窗口输出如下字符串: p3.创建如下变量: int a = 6; int b = 4; int c = 5; int x; 使用条件运算符(op1 ? op2 :op3),在a、b、c中选择值最大的变量,将其值赋予变量x。console窗口输出:“x=....”。 p4.创建如下变量: int speed; String s1 = “正常”; String s2 = “违章”; String result; 假设高速公路的最低限速是60,最高限速是120。于speed变量赋任意值,用条件运算符判断是否违章,并在console窗输出结果。 p5.调试课后习题2-1(教科书70页,Exer2_1.java) 余下时间调试1、2章例题代码,如实验完毕,可提前15分钟离开实验室。 关于实验报告(重要!): 发送报告书电子版与程序源代码交给班长。 报告书电子版:新建记事本(.txt)文件,复制各题的程序代码(复制时请标注class名称,如:p1.java)。文件名为: 学号_姓名.txt 程序源代码:左侧project文件->鼠标右键->properties,可查看源代码路径。将project 文件夹(例:123456_小明)整体压缩。文件名为: 学号_姓名.zip(或rar) 提交时限为下节理论课开始前,过期将扣分;下节实验课开始后,不再接受报告。 抄袭、拷贝者,双方都判为0分。

JAVA程序设计习题库及答案

第一章JAVA语言概论 一、选择题 1。下列不属于java语言鲁棒性特点的是:A.java能检查程序在变异和运行时的错误 B。java 能运行虚拟机实现跨平台 C。java 自己操纵内存减少了内存出错的可能性D。java 还实现了真数组,避免了覆盖数据的可能2.java语言的执行模式是: A。全编译型 B.全解释型 C.半编译和半解释型 D.同脚本语言的解释模式 3.下列关于虚拟机说法错误的是: A。虚拟机可以用软件实现 B.虚拟机部可以用硬件实现 C.字节码是虚拟机的机器码 D.虚拟机把代码程序与各操作系统和硬件分开 4。java语言是1995年由()公司发布的 A.Sun B。Microsoft C.Borland D.Fox Software 5.下列不是虚拟机执行过程特点的是 A。双线程

B.多线程 C.动态链接 D.异常处理 6.java以JVM为基础,最下层是移植接口,由适配器和()组成A.网卡 B。Java os C。Java基本类 D。Java 应用程序和applet小程序 7。java程序的执行过程中用到一套JDK工具,其中javac.exe指A.java语言编译器 B.java字节码解释器 C.java文档生成器 D.java类分解器 8.java的API结构中,不属于类库主要包括的核心包的是 A.java包 B。javax C.javadoc包 D.org扩展包 9.每个java的编译单元可包含多个类或界面,但是每个编译单元最多只 能有()类或者界面是公共的 A.一个 B。两个 C。四个 D。任意多个

10.在当前的java实现中,每个编译单元就是一个以()为后缀的文件 A。java B.class C。doc D.exe 二、填空题 1. 1991年,SUN公司的Jame Gosling和Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个____软件,它是java的前身. 2. java是一个网络编程语言,简单易学,利用了____的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。 3. java可以跨平台的原因是____ 4. JVM的执行过程有三个特点:多线程,_____,异常处理; 5.JAVA程序的安全性体现在多个层次上,在_____,有语法检查;在解释层上,有字节码校验器、测试代码段格式和规则检查,访问权限和类型转换和法性检查,操作数堆栈的上溢或下溢,代码参数类型合法性等;在平台层上,通过配置策略,可设定访问资源域,而无需区分本地或远程。 6。 JAVA的产品主流操作系统平台是Solaris、_____和Macintosh. 7. JAVA系统运行时,通过______机制周期性的释放无用对象所使用的内存,完成对象的清除。 8。在JAVA语言中,将后缀名为______的源代码文件编译后形成后缀名为.c lass的字节码文件。 9。 JAVA语言的执行模式是半编译和______. 10. JAVA类库具有_____的特点,保证了软件的可移植性。 11。在编写执行JAVA程序的过程中需要用到一些工具,SUN公司为我们提供了一套JDK工具,它主要包括:javac.exe、java。exe、_____、ja vap.exe、jkb。exe 12.JAVA程序包括源代码(.java文件)、______、由归档工具jar生成的。jar文件、对象状态序列化.ser文件.

50道JAVA基础编程练习题

50道JAVA基础编程练习题 【程序18】 题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。 import java.util.ArrayList; public class Lx18 { String a,b,c; public static void main(String[] args) { String[] op = { "x", "y", "z" }; ArrayList arrayList=new ArrayList(); for (int i = 0; i < 3; i++) for (int j = 0; j < 3; j++) for (int k = 0; k < 3; k++) { L x18 a=new Lx18(op[i],op[j],op[k]); if(!a.a.equals(a.b)&&!a.b.equals(a.c)&&!a.a.equals("x") &&!a.c.equals("x")&&!a.c.equals("z")){ arrayList.add(a); } } for(Object a:arrayList){ System.out.println(a); } } public Lx18(String a, String b, String c) { super(); this.a = a; this.b = b; this.c = c; } @Override public String toString() { // TODO Auto-generated method stub return"a的对手是"+a+","+"b的对手是"+b+","+"c的对手是"+c+"\n"; } } 【程序26】 题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。 1.程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。 import java.util.Scanner;

《JAVA语言程序设计》期末考试试题及答案(应考必备题库)

《JA V A语言程序设计》期末考试试题及答案2(应考必备题库) 一.判断题 1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(×)4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)5.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(√)6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(√)7.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×)8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√)9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。(×) 二.单项选择题 1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?() A、String args B、String ar[] C、Char arg D、StringBuffer args[] 2.以下关于继承的叙述正确的是()。 A、在Java中类只允许单一继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口只允许单一继承 3.paint()方法使用哪种类型的参数? () A、Graphics B、Graphics2D C、String D、Color 4.以下哪个不是Java的原始数据类型() A、int B、Boolean C、float D、char

《Java程序设计》练习题

《Java程序设计》练习题一 一、单项选择题 1、下列是继承Thread类后得到的子类,请选择正确的一项。(C ) A、class A4 extends Thread B、class A4 implements Thread { { void run( ) public void run( ) { { //….. //….. } } } } C、class A4 extends Thread D、class A4 extends Thread { { public void run( ) run( ) { { //…//… } } } } 2、下列关于Unicode-亨符的说法中,不正确的一项是(C )。 A、Unicode字符集比ASII字符集丰富 B、Unicode字符是16位无符号数 C、字符常量’a’以八进制数表示为’\142’ D、字符常量’a’以八进制数表示为’\14l’ 3、在Java语言中,那一个是最基本的元素?(C ) A、方法 B、包 C、对象 D、接口 4、while循环和do……while循环的区别是:(C ) A、没有区别,这两个结构任何情况下效果一样 B、while循环比do……while循环执行效率高 C、while循环是先循环后判断,所以循环体至少被执行一次 D、do……while循环是先循环后判断,所以循环体至少被执行一次 5、下列说法中,错误的一项是(A)。 A、MouseAdapter是鼠标运动适配器 B、WindowAdapter是窗口适配器

C、ContainerAdapter是容器适配器 D、KeyAdapter是键盘适配器 6、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的(C )方法来完成主类实例的初始化工作。 A、start( ) B、stop( ) C、init( ) D、paint( ) 7、下列哪一项不是Applet的生命周期方法?(B ) A、start() B、getCodeBase() C、destroy() D、init() 8、Frame的默认的布局管理器是下列哪一个(D ) A、FlowLayout B、CardLayout C、GridLayout D、BorderLayout 9、下列说法中,正确的一项是(C )。 A、双精度数强制转换成单精度数后,其数值精度会提高 B、Java语言中的布尔变量可以和整型变量相互强制转换 C、强制转换是将存储长度长的数据转换为长度短的数据 D、强制转换是将存储长度短的数据转换为长度长的数据 10、下列代码的执行结果为:(A ) public class Test { public static void main(String[] args) { System.out.println(5/2); } } A、2 B、2.0 C、.50 D、2.5 11、使用方法(D )来启动线程。 A、sleep方法 B、interrupt方法 C、run方法 D、start方法 12、如果在关闭Socket时发生一个I/O错误,会抛出(A ) A、IOException B、UnknowHostException C、SocketException D、MalFormedURLExcepton 13、下列描述中,哪一项不属于finally语句应陔执行的功能(C )? A、释放资源 B、关闭文件 C、分配资源 D、关闭数据库 14、哪个布局管理器使用的是组件的最佳尺寸(B ) A、FlowLayout B、GridLayout

Java程序设计复习题 (1)

一、单选题:在下列各题的备选答案中选择一个正确的。(每题2分,共20分) 1、下列方法中不是键盘事件KeyEvent实现方法的是() A .keyPressed(KeyEvent e) B .keyReleased(KeyEvent e) C .mouseClicked(MouseEevent e) D .keyTyped(KeyEvent e) 2、下列关于接口的描述,正确的是( C ) A 抽象类可以使用extends关键字来继承接口 B 接口可以被实例化 C 接口可以继承多个父接口 D 接口具有继承性,但不能继承父接口的所有属性和方法 3、下面的方法,当输入为2的时候返回值是多少?( C ) public int getValue(int i) { int result = 0; switch (i) { case 1: result = result + i; case 2: result = result + i * 2; case 3: result = result + i * 3; } return result; } A)0 B)2 C)4 D)10 4、下列叙述中,正确的是( A ) A)声明变量时必须制定一个类型 B)Java认为变量number与Number相同 C)Java中唯一的注释方式是“//” D)源文件中public类可以有0个或者多个 5、如下Java代码段,体现了( B )概念。 public void aMethod(String s){....} Java程序设计2 第1页共6页

public void aMethod(int i){.........} public void aMethod(int I,float f){.....} ..... A)多继承 B)重载 C)重写 D)多态 6、下列标识符(名字)命名原则中,正确的是( D ) A)类名的首字母小写 B)变量和方法名的首写字母大写 C)接口名的首写字母小写 D)常量完全大写 7、Java的核心包中,提供编程应用的基本类的包是( A ) A)https://www.wendangku.net/doc/93423415.html,ng B) Java.util C) Java.applet D) Java.rmi 8、Panel默认的布局管理器是( A ) A) FlowLayout B) GridLayout C) BorderLayout D) FlowLouLayout 9、File类是IO包中唯一表示磁盘文件信息的对象,它定义了一些与平台无关的方法来操纵文件。通过调用File类提供的各种方法,我们能够创建、删除文件、重命名文件、判断文件的读写权限及是否存在,设置和查询文件的最近修改时间等。下面的代码片段实现的是什么功能?( B ) File file = new File("C:\\test.dat"); if (file.exists()) { file.delete(); } A)创建C:\test.dat B) 删除C:\test.dat C) 打开C:\test.dat文件输出流 D) 移动C:\test.dat 10.下列常见的系统定义的异常中,哪个是输入、输出异常? ( B ) A)ClassNotFoundException B)IOException C)FileNotFoundException D)UnknownHostException 11、下列属于合法的Java标志符是( D ) A “ABC” B &5678 C +newer D saler 12、下列数组的初始化正确的是()b Java程序设计2 第2页共6页

Java程序设计习题附答案(一)

Java程序设计题库 第一部分绪论 1、下列关于Java语言的特点,描述错误的是(C) A.Java是跨平台的编程语言B.Java支持分布式计算 C.Java是面向过程的编程语言D.Java支持多线程 2、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?(B) A、安全性 B、多线性 C、跨平台 D、可移植 3、Java JDK中调试器的命令是(C)。 A、javac B、java C、jdb D、avah 4、运行jar文件中class文件需要在java命令后面加的参数为(A)。 A、-cp B-g C-d D-verbose 5、下面哪项在java中是不合法的标识符?(C) A、$user B、point C、You&me D、_endline 6、下面关于Java语言说法正确的是(ABCD)。 A、Java语言是面向对象的、解释执行的网络编程语言。 B、Java语言具有可移植性,是与平台无关的编程语言。 C、Java语言可对内存垃圾自动收集。 D、Java语言编写的程序虽然是“一次编译,到处运行”,但必须要有Java的运行环境。 7、在Java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。( B) A、源, HTML B、源, 字节代码 C、字节代码, 源 D、HTML, 字节代码 8、Java的JVM是指(B)。 A、由Java操作的家用设备(通常是一个漂亮的小烤箱) B、Java字节代码的解释程序 C、Java源代码的编译器 D、运行Java 所需的硬件设备 9、在Java中,关于CLASSPA TH环境变量的说法不正确的是(A)。 A、CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B、编译器用它来搜索各自的类文件。 C、CLASSPATH是一个目录列表。 D、解释器用它来搜索各自的类文件。 10、一个可以独立运行的Java应用程序(D)。

JAVA程序设计练习测试题及参考答案

第一部分 《Java 程序设计》练习测试 [说明]:要求所有答案务必写在答题纸的相应题号位置上,否则不予评分。 一、单选择题(共10分,每小题2分) 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展 名为()。 A .class B .html C .java D .exe 2、设int x = 1 , y = 2 , z = 3; 则表达式y+=z- -/++x 的值是() 。 A 3 B 3. 5 C 4 D 5 3、在Java Applet 程序用户自定义的Applet子类中,一般需要重载父类的()方法 来完成一些画图操作。 A start( ) B stop( ) C in it( ) D pai nt() 4、不允许作为类及类成员的访问控制符的是()。 A public B static C private D protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为 前缀就可以调用它,该方法头的形式为()。 A final void method( ); B public void method(); C static void method( ); D abstract void method(); 二、填空题(共20分,每空格1分) 1、开发与运行Java程序需要经过的三个主要步骤为_(1)_、_⑵—和。 2、如果一个Java Applet 源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是一⑷一类的子类并且存储该源程序文件的文件名为一⑸一。 3、如果一个Java Applet 程序文件中定义有4个类,则使用Sun公司的JDK编译器一⑹ 编译该源程序文件将产生」7)_个文件名与类名相同而扩展名为―⑻― 的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用_⑼ 字节内存空间,这样,无论是中文字符还是英文字符,都是占用_(10)_ 字节内存空间。 5、设int y = 5; 则表达式(y++ )/6 的值是_(11)_ 。 6、若int x = 5,y = 10; 则x= y 的逻辑值分别为_(12) ______ 和_(13)_ 。 7、_(14)_方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽 象类之中定义。_(15)_ 方法是不能被当前类的子类重新定义的方法。 8、创建一个名为MyPackage的包的语句是_(16)_,该语句应该放在程序的位置为:_(17)_ 9、设有数组定义:int a[ ] = { 20 ,30 ,40 ,50 , 60 , 70 , 80,90,100,110,120,130}; 则执行以下几个语句后的输出结果是—(18)—。 int s =0; for( int i =0; i < a.len gth ; i ++) if( i%4==0) s +=a[i]; System.out.pri ntl n( s); 10、在Java程序中,通过类的定义只能实现_(19)_ 重继承,但通过接口的定义可以实 现_(20)_重继承关系。

java练习题1

第一章Java应用程序 一、判断题 1.“//”即可以表示单行注释,也可以表示多行注释。(F ) 2.方法System.out.println只在命令窗口中显示(或打印)一行文字。( F) 3. 类System不是由程序开头的import语句装载。( T) 4.声明变量时必须指定一个类型。(T ) 5.注释的作用是使程序在执行时在屏幕上显示//之后的内容。(F) 6.Java认为变量number与NuMbEr是相同的。(F ) 7.求模运算符(%)只可用于整型操作数。(F ) 8.算术运算符*,/,%,+和-有相同的优先级。(F ) 9.方法Integer.parseInt将一整数转变成String。(F ) 10. Java应用程序从main方法开始执行。(T) 二、选择题 1.对象之间的基本关系是:( B ) A.包含继承 B.包含继承关联 C.包含关联 D.没有 2.下列说法正确的是:( B ) A.“清华大学”是一个类 B.“大学”是一个类 C.“大学“和”清华大学“之间是继承的关系 D.“大学“和”清华大学“之间没有关系 3.面向对象程序设计方法的优点:( D ) A.可重用性、可扩展性、可操作性 B.可重用性、可维护性、可操作性 C.可管理性、可扩展性、可操作性 D.可重用性、可扩展性、可管理性 4.下面选项中,Java对类Welcome进行定义正确的是:( D ) A.public class 1Welcome B.public class We lcome C.public class welcome D.public class Welcome 5.有如下的程序:( D ) public class Welcome3 { public static void main( String args[] ) { System.out.println( "Welcome\nto\nJava\nProgramming!" ); } } 则它的输出结果是:

实验一java基础知识

实验一:java基础知识 实验目的: 1.掌握jave中变量的类型。 2.掌握常用的运算符 3.程序流程控制:顺序,选择和分支 实验内容: 1、回文数: 编写一个Java程序。用户从键盘输入一个1-9999之间的数,程序将判断这个数是几位数,并判断这个数是否回文数。回文数是指该数含有的数字逆序排列后得到的数和原数相同。 实验类别:验证性 2、猜数字游戏 编写一个Java应用程序,实现如下功能: 程序随机分配给客户一个1-100之间的整数 用户在输入对话框中输入自己的猜测 程序返回提示信息,提示信息分别是:“猜大了”、“猜小了”、和“猜对了”用户可以根据提示信息再次输入猜测,直到提示信息是“猜对了” 实验类别:设计性 3、输出希腊字母表 为了输出希腊字母表,首先获取希腊字母表的第一个字母和最后一个字母在unicode表中的位置,然后使用循环输出剩余的希腊字母 要观察一个字符在uniclde表中的顺序位置 实验类别:设计性

实验二类和对象 实验目的: 1.理解类的基本概念。 2.掌握如何定义类,定义类的成员变量和成员方法.创建和使用对象。 3.掌握定义重载方法和构造方法,方法参数的传递。 4. static变量和方法的使用。 实验内容: 1、定义一个名为Rectangle的类表示矩形,其中含有length,width两个double型 的成员变量表示矩形的长和宽。要求为每个变量定义访问方法和修改方法,定义求矩形周长的方法peremeter和求面积的方法area。定义一个带参数构造方法,通过给出的长和宽创建矩形对象。定义默认构造方法,在该方法中调用有参构造方法,将矩形长宽设置为1.0。 实验类别:验证性 2、方法重载: 编写一个Java程序,反映方法重载的使用特点,该程序包含多个重载的加法的运算,如整型加法,实型加法。 实验类别:验证性 3、学生类的创建: 1)创建一个student类,包括的域有学号、班号、姓名、性别、年龄等 2)声明一个构造方法,以初始化对象的所有域 3)声明分别获得各属性(学号、班号、姓名、性别、年龄)的各个public方法。4)声明修改各属性(学号、班号、姓名、性别、年龄)的各个public方法。5)创建一个具体学生对象,进行输出。 实验类别:设计性 4、定义一个类,类中有两个整型变量x和y,并定义构造函数初始化这两个变量。(通过构造函数传数据,数据值自定) 类中还可定义以下方法: 求两个数的和(x+y)并返回结果,求两个数的差(x-y)并返回结果,求两个数商(x/y)并返回结果,求两个数的余数(x%y)并返回结果,求两个数的最大值并返回结果。 编写应用程序,测试上面定义的类,使用类中定义的各个方法并将其结果输出。实验类别:验证性 5、用set()、get()方法传递数据: 本工程共有三个类,Person类、Employee类、和Test类,其中Test类 为测试类,其中有main()方法。 调用的是默认的构造方法,参数为空。 实验类别:设计性

java程序设计试题库

《Java语言程序设计基础教程》 练习思考题参考答案 第1章Java程序设计概述 1、1单项选择题 1.编译Java Application源文件将产生相应得字节码文件,扩展名就是什么 A、、java ???? B、、class ?C、、html??? D、、exe 解答:B 2.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中“一次编 译,随处运行”得特点. ?A、简单性????B、平台无关性 C、面向对象性???? D、安全性 解答:B 3.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中并行机制得 特点。 ?A、多线程???B、平台无关性 C、面向对象性??? D、安全性 解答:A 4。在Java语言中,下列哪些语句关于内存回收得说明就是正确得? ?A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存; C.内存回收程序允许程序员直接释放内存; D.内存回收程序可以在指定得时间释放内存对象 解答:B 5.一个Java源文件中最多只能有多少个public类。 ?A、1个?B、2个

C、3个? D、任意多个 解答:A 6。下面哪一个不就是Java语言所具有得特点。 A、没有全局变量,在类得定义外部没有任何得变量定义; ?B、不直接支持指针操作,而使用更安全得引用类型; C、支持子类对父类得多继承; D、具有自动垃圾收集功能; 解答:C 7。下面哪一个不就是Java开发工具包JDK得组成部分. ?A、Java得编译器; B、Java得解释器;? ?C、Java得API继承类库; ?D、Eclipse开发工具; 解答:C 8。JDK提供得编译器就是()。 ?A、java、exe???B、javac、exe C、javap、exe??? D、javaw、exe 解答:B 9。作为Java应用程序入口得main方法,其声明格式可以就是() A、public voidmain(String[]args) B、public static void main(String []args) C、public static void Main(String* args) D、public int main(String []args) 解答:B 10.下列说法正确得就是( A ) A、JAVA程序得main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序得main方法中如果只有一条语句,可以不用{}(大括号)括起来 11。下列哪些语句关于Java内存回收得说明就是正确得? ( B) A、程序员必须创建一个线程来释放内存

java程序练习题

练习: 1.为类设计一个静态方法,实现检查输入字符串是否为”回文”.的功能 Boolean IsPalindrome(String poem) 2.用随机数对象产生0---1000范围内的不同整数,用以初始化一个M*N的二维数组(M*N<100),然后编程找出二维数组中的最大数和最小数,并将其交换位置。要求输出原始二维数组及交换后的二维数组。 3.设计一个类,并为其添加一个带有一个参数的构造函数,同时封装一个方法。当连续调用该方法时,依次产生下列元素输出 第一次调用输出:5 7 4 8 9 1 第二次调用输出:1 5 7 4 8 9 第三次调用输出:9 1 5 7 4 8 第四次调用输出:8 9 1 5 7 4 第五次调用输出:4 8 9 1 5 7 第六次调用输出:7 4 8 9 1 5 第一次调用输出:5 7 4 8 9 1 4.输入出租车公里数,输出应付的车费数: 收费标准如下:3000米以下为8元,每超过500米增加1.2元,不足500米按500米计算。 5.竹竿长10米,每天截取一半,过多少天后,竹竿长度会小于10厘米。 6.输入一个英文字符串,统计出其中各字符出现的次数,并以下列样式输出: a=?,b=?,c=?,d=?,e=? f=?,g=?,h=?,i=?,j=? …… 7.写一个实例方法,要求输入一个整数m ,并输出1---m之间满足下列条件的所有整数:这个数+1 是一个完全平方数,他的一半+1也是一个完全平方数。 8.设计一个类Complex,用于封装对复数的下列操作: 8.1.一个带参数的构造函数,用于初始化复数成员 8.2.一个不带参数的构造函数,调用代参数的构造函数完成对复数成员的初始化。 8.3. 实现两个复数的加法,减法的静态方法和实例方法。 8.4.以复数的标准形式:x+iy输出此复数 8.5. 写两个函数,分别获得复数的实部getReal(),getImage()和虚部。 9.写一个静态函数,返回给定整数n的所有因子 10.输入一个十六进制字符串,写一函数,将其转换为对应的十进制数。 11.设计一个只能创建一个唯一实例的类。 12.设计一个类,该类用于表示现代中国的一个典型家庭:father,mother,child. 并为其添加一个无参的构造函数和带三个参数的构造函数以及三个读写属性和 一个get(int member )方法,当member=FATHER时,返回 父亲的姓名;member=MOTHER时,返回母亲的姓名;member=CHILD时,返回 孩子的姓名;FATHER,MOTHER,CHILD 为常数。 13.巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,试编写一程序, 根据输入的北京时间输出相应的巴黎和纽约时间。 14.写一函数,实现用某一字符c 去填充字符串的左部,使其长度为恰好为L PadLeft(String s,int L,char c),同理,实现PadRight((String s,int L,char c) 用字符c 填充串s 的右部,使其长度恰好为L. 15. 写一方法,用于删除字符串中所有空格(不仅仅是两端的空格),并返回没有空格的字

《Java基础入门》-课后习题答案--1-6

第1章Java开发入门 一、填空题 1、Java EE、Java SE、Java ME 2、JRE 3、javac 4、bin 5、path、classpath 二、选择题 1、ABCD 2、C 3、D 4、B 5、B 三、简答题 1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。 2、JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运 行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE。 JDK(Java Development Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的。初学者学习和使用Java语言时,首先必须下载和安装JDK。JDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。 四、编程题 public class HelloWorld { public static void main(String[] args) { System.out.println("这是第一个Java程序!"); } } 第2章Java编程基础 一、填空题 1、class 2、true和false 3、单行注释、多行注释、文档注释 4、基本数据类型、引用数据类型 5、1、2、4、8 6、& && | || 7、0 8、5 9、34 10、56 二、判断题 1、错 2、对 3、错 4、对 5、错

java实验1

Java开发环境(必写3.10) 一、实验目的 (1)熟悉J2SE开发工具的使用。 (2)学习编写简单的Java Application和Java Applet程序。 (3)了解Java源代码、字节码文件,掌握Java程序的编辑、编译和运行过程。 二、实验原理 (1)Java源文件是文本文件。 (2)javac.exe 用来将Java源程序编译为字节码。 (3)java.exe 用来运行Java Application (4)编写网页,嵌入Java Applet。用appletviewer.exe或浏览器来运行该网页。 三、实验步骤 (1)上机输入以下程序。 (2)保存程序。 (3)编译、运行程序,检查实验结果是否正确。 (4)上机结束后,整理实验报告。 四、实验内容 (1)在“我的电脑”上点右键/点“属性”/点“高级”/点“环境变量”/点“新建”(用户变量)/变量名填“Path”、变量值填“C:\j2sdk1.4.2_06\bin”(视J2SE SDK安装的位置和版本)。(2)打开记事本,输入教材p13例2-1。输入完成后保存到自己的目录中(例如d:\12001j)。注意保存时,保存类型要选“所有文件”。源文件名必须和类名严格一致。源文件后缀要用“.java”。 (3)与(2)类似,输入教材p18例2-3。 (4)点“开始/运行”,输入“cmd”。输入d:<回车>,输入cd d:\12001j<回车>。 (5)输入javac MyJavaApplication.java<回车>。如果没有任何提示,则编译成功,检查d:\12001j 目录下将生成文件MyJavaApplication.class。否则请检查输入的内容与教材是否一致。 (6)输入javac MyJavaApplet.java<回车> 检查工作如(5) (7)输入java MyJavaApplication<回车> 观察运行结果。 (8)用记事本输入教材p19例2-4的内容,也存在d:\12001j下,文件名任意,后缀为“.htm”或“.html”。 (8)输入appletviewer AppletInclude.html<回车>,观察运行结果。 (9)到资源管理其中,双击“d:\12001j\AppletInclude.html”,观察运行结果。

java程序设计习题集

Java程序设计习题集 第一章Java基础知识 §1.1Java概述 1.完成在Windows 2000操作系统下环境变量的配置 2.创建一个Java程序,输出自己的基本信息:名字和年龄。 3.概述Java语言的版本发展过程。 4.简述Java语言的运行机制。 5.在自己的机器上用JDK开发运行环境完成第一个Java程序的编辑、编译、运行过程。 6.简述Java语言的特点,Java虚拟机的概念及作用。 §1.2 Java基本语法 1.什么是变量?什么是常量? 2.什么叫表达式,Java语言中共有几种表达式? 3.下面哪些表达式不合法?为什么? HelloWorld 2Thankyou _First -Month 893Hello non-problem HotJava implements $_MyFirst 4. 以下的选项中能正确表示Java语言中的一个整型常量的是( )。 A) 12. B) -20 C) 1,000 D) 4 5 6 5. 以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i; C) a=a + 1= 5; D) y = int ( i ); 6. 若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32 7. 若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A) 0 B) 4 C) 8 D) -4 8. 在Java语言中,逻辑常量只有true 和 ___________ 两个值。 9. Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float 和 __________两种具体类型。 10. Java语言是( )。 A.面向问题的解释型高级编程语言 B.面向机器的低级编程语言 C.面向过程的编译型高级编程语言 D.面向对象的解释型高级编程语言 11. 下列的变量定义中,错误的是( )。 A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$; 12. 以下的变量定义语句中,合法的是( )。 A) float $_*5= 3.4F; B) byte b1= 15678; C) double a =Double. MAX_VALUE; D) int _abc_ = 3721L; 13. 以下字符常量中不合法的是( )。 A) '|' B) '\'' C) "\n" D) '我' 14. 若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是( )。 A) b = a!=7 ; B) a = 7 + b + c=9; C) i=12.3* % 4; D) a = a + 7 = c + b;

50道JAVA基础编程练习题(包含答案)

50道JAVA基础编程练习题 Java学习笔记2010-03-19 17:45:01 阅读1117 评论6 字号:大中小订阅 【程序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】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的

相关文档