JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”(p13,例1-1 )//programme nameHelloworld.javapublicclassHelloworld{publicstaticvoidma in( Stri ngargs[]){System.out.print(" 你好!");}}2、编写一个Java程序,用if-else语句判断某年份是否为闰年。
//ProgrammeNameLeapYear.javapublicclassLeapYear{publicstaticvoidma in( Stri ngargs[]){in tyear=20XX;if(args.le ngth!=0)year=I nteger.parsel nt(args[0]);if((year%4==0&&year%100!=0)||(year%400==0))System.out.pri ntl n( year+" 年是闰年。
");elseSystem.out.pri ntln (yea 叶" 年不是闰年。
");}}//if-else 语句3、编写一个Java程序在屏幕上输出1 ! +2 ! +3 ! +……+10 !的和。
(p64, 例 2-2 )//programme nameForTest.javapublicclassForTest{publicstaticvoidma in( Stri ngargs[]){in ti,j,mul,sum=O;for(i=1;i<=10;i++){mul=1;for(j=1,j<=i;j++){mul=mulGj;}sum=sum+mul;publicclassFactorial{〃下面的这个方法利用递归的方法求阶乘publici ntgetFac(i ntm){if(m==1){return1;}else{returnmGgetFac(m-1);}}pub licstaticvoidmai n( Stri ngargs[]){Factorialfac=newFactorial();//System.out.p rin tl n( fac.getFac(4));i ntsum=0;for(inti=1;i<=10;i++){sum+=fac.getFac(i);} System.out.println("1 到 10 的阶乘的和是:"+sum);}}}System.out.println( “ 1 ! +2 ! +3 ! + . +10 ! = ” +sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius (私有,浮点型);//存放圆的半径;②两个构造方法Circle()//将半径设为0Circle(doubler)// 创建Circle对象时将半径初始化为 r ③三个成员方法doublegetArea()〃获取圆的面积doublegetPerimeter()〃获取圆的周长voidshow()〃将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
①一个成员变量doublehight (私有,浮点型);//圆柱体的高;②构造方法Cylinder(doubler,doubleh)〃创建Circle对象时将半径初始化为③成员方法doublegetVolume()〃获取圆柱体的体积voidshowVolume()〃将圆柱体的体积输出到屏幕编写应用程序,创建类的对象,分别设置圆的半径、圆柱体的高,别显示圆半径、圆面积、圆周长,圆柱体的体积。
//ProgrammeNameT estCyli nder.javaclassCircle{〃定义父类--圆类privatedoubleradius;// 成员变量--圆半径Circle(){//构造方法radius=0.0;}Circle(doubler){// 构造方法radius=r;}doublegetPerimeter(){// 成员方法--求圆周长return2GMath.PIGradius;还拥有:计算并分}doublegetArea(){〃 成员方法--求圆面积returnMath.PIGradiusGradius;}voiddisp(){〃 成员方法--显示圆半径、周长、面积System.out.pri ntl n("圆半径="+radius);privatedoublehight;// 成员变量--园柱高Cyli nder(doubler,doubleh){〃 构造方法super(r);hight=h;}publicdoublegetVol(){〃 成员方法--求园柱体积retur ngetArea()Ghight;}publicvoiddispVol(){〃 成员方法--显示园柱体积System.out.pri ntl n("圆柱体积="+getVol());}}publicclassTestCyli nder{〃 定义主类System.out.pri ntl n (” System.out.pri ntl n (” }}classCyli ndereGte ndsCircle{〃 圆周长="+getPerimeter());圆面积="+getArea());定义子类--圆柱类publicstaticvoidmai n( Stri ng[]args){〃主程入口CircleCi=newCircle(IO.O);// 生成园类实例Ci.disp();〃调用园类的方法Cyli nderCyl=newCyli nder(5.0,10.0);〃生成圆柱类实例Cyl.disp();〃调用父类方法Cyl.dispVol();〃调用子类方法}}5、编写一个Java应用程序,从键盘读取用户输入两个字符串,并重载3个函数分别实现这两个字符串的拼接、整数相加和浮点数相加。
要进行异常处理,对输入的不符合要求的字符串提示给用户,不能使程序崩溃。
(p39,例2-10,2-11 ) //programme nameStri nput.javaimportjava.io.G;publicclassStri nput{publicstaticvoidma in( Stri ngargs[]){Strin gs1,s2,ss,si,sf;in ti1,i2;floatf1,f2;BufferedReaderstri n=n ewBufferedReader( newl nputStreamReader(System.i n));try{System.out.pri nt(”输入第一个字符串:");s仁stri n.readLi ne();System.out.pri nt("输入第二个字符串:");s2=stri n. readL in e();}catch(EGceptio ne){System.out.pri ntl n(e.getMessage());}i1= In teger.parse In t(s1);i2=In teger.parse In t(s2); f仁Float.parseFloat(s1); f2=Float.parseFloat(s2); ss=strAdd(s1,s2);si=strAdd(i1,i2);sf=strAdd(f1,f2);System.out.pri ntl n(”输入的二个字符串相加结果为:"+ss);System.out.pri ntln(”输入字符串转换为整数相加结果为:"+si); System.out.pri ntln(”输入字符串转换为浮点数相加结果为:"+sf); }Stri ngstrAdd(Stri ngstr1,Stri ngstr2){returnstr1+str2;}Stri ngstrAdd(i nti nt1,i ntin t2){returnStri ng.valueOf(i nt1+i nt2);}Stri ngstrAdd(floatflt1,floatflt2){returnStri ng.valueOf(flt1+flt2);}}6. 应用FilelnputStream 类,编写应用程序,从磁盘上读取一个Java程序,并将源程序代码显示在屏幕上。
(被读取的文件路径为:E:/myjava/Hello.java )//ProgrammeNameFISDemo.javaimportjava.io.G;publicclassFISDemo{publicstaticvoidma in( Stri ngargs[]){byte[]buf= newbyte[2056];try{File In putStreamfile ln=n ewFile In putStream("e:/myjava/Hello.java");in tbytes=fileI n.read(buf,0,2056);Strin gstr =n ewStri ng(buf,0,bytes);System.out.pri ntln( str);}catch(EGcepti on e){e.pri ntStackTrace();}}7、编写一个Java程序将当100,101,102,103,104,105 个数以数组的形式写入到Dest.tGt文件中,并以相反的顺序读出显示在屏幕上。
(p190,例7-2)//programme namelODemo.javaimportjava.io.G;publicclassIODemo{publicstaticvoidma in( Stri ngargs[]){in tdata[]={100,101,102,103,104,105};intt;try{DataOutputStreamout=n ewDataOutputStream (n ewFileOutputStream( “dest.tGt ”));for(i nti=0;i<data .len gth;i++)out.WriteI nt(data[i]);out.close();Data In putStream in=n ewData In putStream (n ewFile In putStream(“ dest.tGt ”));for(i nti=data.le ngth-1;i>=0;i--){t=i n.readl nt(data[i]);System.out.pri nt( “” +t);}System.out.pri ntl n();in .close();}catch(IOEGceptio ne){System.out.pri ntl n(e.getMessage());}}}8. 利用Applet类和Runnable 接口实现滚动字幕,其中字幕文字(“学好Java 有工作”)和时间间隔(“200 ”)需要由页面文件中<Applet> 标记的子标记 <Param> 传递。
Java试题答案(全)
一、选择题答案选择第1题B选择第2题A选择第3题C选择第4题B选择第5题A选择第6题A选择第7题B选择第8题C选择第9题B选择第10题B选择第11题C二、多项选择题答案多项选择第1题BD多项选择第2题AE多项选择第3题AC多项选择第4题AE多项选择第5题AE多项选择第6题DEF多项选择第7题AC多项选择第8题BC多项选择第9题AB多项选择第10题CD多项选择第11题CD多项选择第12题ACD多项选择第13题ABD三、填空题答案填空第1题x=10,a=3,b=4,c=5填空第2题java.util填空第3题(public )(static )(void)(main)(String args[])填空第4题1填空第5题26四、编程题答案1public class HelloWorld{public static void main(String args[]) {System.out.println("Hello,World!");}}import java.awt.Graphics;import java.applet.Applet;public class HelloWorld extends Applet{ String s;public void init(){s="Hello World!";}public void paint(Graphics g){g.drawString(s,25,25);}}2class yanghui{public static void main (String args[]) {int i,j;int yhlevel=10;int yanghui[][];System.out.println("杨晖三角形:");yanghui=new int[yhlevel][];for(i=0;i<yanghui.length;i++)yanghui[i]=new int[i+1];yanghui[0][0]=1;for (i=1; i<yanghui.length;i++){yanghui[i][0]=1;for(j=1;j<yanghui[i].length-1;j++)yanghui[i][j]=yanghui[i-1][j-1]+yanghui[i-1][j];yanghui[i][yanghui[i].length-1]=1;}for (i=0; i<yanghui.length;i++){for(j=0;j<yanghui[i].length;j++)System.out.print(yanghui[i][j]+" ");System.out.println();}}}输出结果是:杨晖三角形:11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 11 7 21 35 35 21 7 11 8 28 56 70 56 28 8 11 9 36 84 126 126 84 36 9 13import java.io.*;public class MemoController{FileOutputStream fos;OutputStreamWriter osw;BufferedWriter bw;public MemoController(){try{fos=new FileOutputStream("memo.txt",true);osw=new OutputStreamWriter(fos);bw=new BufferedWriter(osw);}catch(FileNotFoundException e){};}public synchronized void append(String s){try{bw.write(s,0,s.length());bw.flush();bw.close();osw.close();fos.close();}catch(IOException e){}}public static void main(String args[]){MemoController mmc=new MemoController();mmc.append("I am xubin ");}}4import java.io.*;class Phones{static FileOutputStream fos;public static final int lineLength = 81;public static void main(String args[]) throws IOException{byte[] phone = new byte[lineLength];byte[] name = new byte[lineLength];int I;try{fos = new FileOutputStream("phone.numbers");}catch(FileNotFoundException e){ }while (true){System.err.println("Enter a name (enter 'done' to quit)");readLine(name);if ("done".equalsIgnoreCase(new String(name,0,0,4))){break;}System.err.println("Enter the phone number");readLine(phone);for (int i=0;phone[i]!= 0;i++){fos.write(phone[i]);}fos.write(',');for (int i=0;name[i]!= 0;i++){fos.write(name[i]);}fos.write('\n');}fos.close();}private static void readLine(byte line[]) throws IOException {int i=0,b=0;while ((i<lineLength-1)&&((b=System.in.read())!='\n')){line[i++] = (byte)b;}line[i]=(byte) 0;}}。
java编程题全集题及答案
java编程题全集题及答案J a v a程序设计总复习题1、编写一个Java程序,用if-else语句判断某年份是否为闰年。
(分支)// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))年是闰年。
");else年不是闰年。
");}}//if-else语句2、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(循环)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;}“1!+2!+3!+……+10!= ”+sum);}}3、依次输入10个学生成绩,判断学生(优秀、良好、中等、及格、不及格)并计算人数(switch)4、使用冒泡排序(数组)public class BubbleSort {public static void main(String[] args) {int[] array={63,4,24,1,3,5};BubbleSort sorter=new BubbleSort();sorter.sort(array);}//冒泡排序public void sort(int[] array){for(int i=1;i<array.length;i++)< bdsfid="104" p=""></array.length;i++)<>for(int j=0;j<array.length-1;j++){< bdsfid="106" p=""></array.length-1;j++){<>if(array[j]>array[j+1]){int temp=array[j];array[j]=array[j+1];array[j+1]=temp;}}showArray(array);}//遍历数组,并输出数组的元素。
JAVA编程题全集题及答案
【程序1】??题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?//这是一个菲波拉契数列问题}}【程序14】【程序18】题目:两个乒乓球队进行比赛,各出三人。
甲队为a,b,c三人,乙队为x,y,z三人。
已抽签决定比赛名单。
有人向队员打听比赛的名单。
a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
public class lianxi18 {static char[] m = { 'a', 'b', 'c' };static char[] n = { 'x', 'y', 'z' };public static void main(String[] args) {for (int i = 0; i < m.length; i++) {for (int j = 0; j < n.length; j++) {if (m[i] == 'a' && n[j] == 'x') {continue;} else if (m[i] == 'a' && n[j] == 'y') {continue;} else if ((m[i] == 'c' && n[j] == 'x')|| (m[i] == 'c' && n[j] == 'z')) {continue;} else if ((m[i] == 'b' && n[j] == 'z')|| (m[i] == 'b' && n[j] == 'y')) {continue;} else}}}}【程序19】题目:打印出如下图案(菱形)****************【程序20】题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
java编程题全集
java编程题全集Java是一种常用的编程语言,被广泛应用于软件开发和系统编程。
为了提升编程能力和技巧,熟悉解决各种问题的方法,针对Java编程题进行练习是非常必要的。
本文将介绍一些Java编程题,以帮助读者提高他们的编程技能。
1. 编写一个Java程序,将一个整数数组按照升序排序。
要求:不使用Java内置的排序函数,并使用冒泡排序算法实现。
解答:```javapublic class BubbleSort {public static void main(String[] args) {int[] arr = {64, 34, 25, 12, 22, 11, 90};bubbleSort(arr);System.out.println("排序后的数组:");for (int i : arr) {System.out.print(i + " ");}}public static void bubbleSort(int[] arr) {int n = arr.length;for (int i = 0; i < n - 1; i++) {for (int j = 0; j < n - i - 1; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}}```2. 编写一个Java程序,判断一个字符串是否是回文串。
要求:忽略字符串中的空格和标点符号,并不区分大小写。
解答:```javapublic class PalindromeCheck {public static void main(String[] args) {String str = "A man, a plan, a canal, Panama";if (isPalindrome(str)) {System.out.println("是回文串");} else {System.out.println("不是回文串");}}public static boolean isPalindrome(String str) {str = str.replaceAll("[^a-zA-Z0-9]", "").toLowerCase(); int left = 0;int right = str.length() - 1;while (left < right) {if (str.charAt(left) != str.charAt(right)) {return false;}left++;right--;}return true;}}```3. 编写一个Java程序,计算两个矩阵的乘积。
java100道选择题含答案.docx
1.下列不可作为java语言标识符的是(D)A)al B)$l C) _13.整型数据类型中,需要内存空间最少的是(D)4.Java类可以作为(C)A)类型定义机制B)数据封装机制C)类型定义机制和数据封装机制D)上述都不对5.在创建对象时必须(C)A)先声明对象,然后才能使用对象B)先声明对象,为对象分配内存空间,然后才能使用対象C)先声明对象,为对象分配内存空间,对对象初始化,然后才能使丿IJ对象D)上述说法都对6.在调用方法时,若要使方法改变实参的值,可以(B)A)用基本数据类型作为参数B)用对彖作为参数C)A和B都对D)A和B都不对8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B)A)安全性B)多线性C)跨平台D)可移植9.Character流与Byte流的区别是(C)A)每次读入的字节数不同C)前者是字符读写,后者是字节读写10.以下声明合法的是( DB)前者带有缓冲,后者没有D)二者没有区别,可以互换使用B、public final static native int w()D)ll2.有一段java应用程序,它的主类名是al,那么保存它的源文件名町以是(A)A) al.java B) al.class C)al D)都对A) short B) long C) int D) byte7.Java 中(C)A)一个子类可以有多个父类,B)一个了类可以有多个父类,C)一个子类可以冇一个父一个父类也可以有多个子类但一个父类只可以有一个了类但一个父类可以冇多个子类A、default String s;D 、abstract final double hyperbolicCosine()关于以下application 的说明,正确的是( C )class StaticStuff {static int x=10: static {x+=5; }public static void main (String {System.out.println( "x 二” + x) }static {x/=3;}}4行与9行不能通过编译,因为缺少方法名和返回类型 9行不能通过编译,因为只能有一个静态初始化器编译通过,执行结果为:x=5 编译通过,执行结果为:x=3关于以下程序代码的说明正确的是(D )class HasStatic{private static int x=100;public static void mainfString args[ ]){HasStatic hsl=new HasStatic(); hsl.x++;C^ abstract double d ;args[])6. HasStatic hs2 二new HasStatic();7. hs2.x++;8. hsl=new HasStatic();9. hsl.x++;10. HasStatic.x-11. System.out.println( +x);12. }13- }A、5行不能通过编译,因为引用了私有静态变屋B、10行不能通过编译,因为x是私有静态变量C、程序通过编译,输出结果为:x=103D、程序通过编译,输岀结果为:x=10213. 以下选项屮循环结构合法的是( C )A、while (int i<7){ i++;System.out.println(/Z i is "+i);Bx int j=3;while(j){ System.out.printlnf^j is "+j);}C、int j=0;for(int k=0; j + k !=10; j++,k++){ System.out.println(/z j is "+ j + "k is"+ k);}D、int j=0;do{System.out.println( a\ is "+j++); if (j = = 3) {continue loop;} }while (j<10);14.类Testi定义如下:1.public class Testl{2.public float aMethod (float t3.3.}将以下哪种方法插入行3是不合法的。
《面向对象程序设计(Java)》经典编程集(共60题,含答案)
《面向对象程序设计(Java)》经典编程集(共60题,含答案)/*一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第5次落地时,共经过多少米?第5次反弹多高?*//*输出7*7口诀*//*求1+2!+3!+...+10!的和*//*有5个人坐在一起,问第五个人多少岁?他说比第4个人大3岁。
问第4个人岁数,他说比第3个人大3岁。
问第三个人,又说比第2人大3岁。
问第2个人,说比第一个人大3岁。
最后问第一个人,他说是10岁。
请问第五个人多大? *//*求0--7所能组成的6位的奇数个数是多少个*//*有1、2、3、4、5、6、7、8、9个数字,能组成多少个互不相同且无重复数字的四位数?程序分析:可填在千位、百位、十位、个位的数字都是1、2、3、4、5、6、7、8、9。
组成所有的排列后再去掉不满足条件的排列。
*//*一个整数,它加上1000后是一个完全平方数,再加上1680又是一个完全平方数,请问该数是多少?程序分析:在10万以内判断,先将该数加上1000后再开方,再将该数加上2680后再开方,如果开方后的结果满足如下条件,即是结果。
请看具体分析*//*利用条件运算符的嵌套来完成此题:学习成绩> =90分的同学用A表示,80-89分之间的用B表示,70-79分之间的用C表示,60-69分之间用D表示,60分以下的用E表示。
(假定输入数字为95,判断等级)*//*题面:编写程序解决如下问题,小明有五本新书,要借给A,B,C三位小朋友,若每人每次只能借一本,求可以有多少种不同的借法?将结果打印输出*//*题面:编写程序解决如下问题,某人将一缸金鱼分5次出售,第一次卖出全部的一半加二分之一条;第二次卖出余下的三分之一加三分之一条;第三次卖出余下的四分之一加四分之一条;第四次卖出余下的五分之一加五分之一条;最后卖出余下的11条。
问原来的鱼缸中共有几条金鱼?将结果打印输出*//*题面:编写程序,一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,且这两个三位数的数码正好相反,求这个三位数,以十进制输出。
JAVA编程题全集(经典数学题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String[] args) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
