Java简单题
0.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6的因子为1、2、3,而6 = 1 + 2 + 3,因此6是“完数”。编程序找出1000之内的所有完数,并按下面的格式输出其因子: 6 -〉1,2,3 ~
参考程序如下: public class 完数 { public static void main(String[] args) { int i,j,sum=0,k=0,t; int[] a=new int[50]; for(i=1;i<=1000;i++) { sum=0; for(j=1;j\"); for(k=0;k 1、写出能完成题目要求功能的、可正常运行的Java程序,给满分,否则0分。 ~~~b 1 打印出1000以内的所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如,153是一水仙花数,因为153 = 13 + 53 + 33。 ~ 参考程序如下: public class 水仙花数 { public static void main(String[] args) { int i=0,j=0,k=0,n=1; for(int m=100;m<1000;m++){ i=m%10; j=m/10%10; k=m/100%10; if(Math.pow(i, 3)+Math.pow(j, 3)+Math.pow(k,3)==m){ System.out.print(m+\"\\"); if(n%2==0){ System.out.println(); } n++; } } } } 评分标准: 2、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 求Sn=a+aa+aaa+…+aa…a之值,其中a是一个数字。例如:2+22+222+…+22222(此时n=5),n由键盘输入。 ~ 参考程序如下: import java.util.Scanner; public class N位相同数字和 { public static void main(String[] args) { int i=0,n=0,sum=0,result=0; Scanner sc=new Scanner(System.in); System.out.println(\"input a number,from 1 to 9:\"); i=sc.nextInt(); System.out.println(\"input N number\"); n=sc.nextInt(); sum=i; for(int j=1;j System.out.print(sum+\"=\"+(result+sum)); } 评分标准: 3、写出能完成题目要求功能的、可正常运行的Java程序,给满分,否则0分 ~~~b 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过了多少米?第10次反弹多高? ~ 参考程序如下: public class 小球 { public static void main(String[] args) { double h1=100,h2=100,sum=100; for(int i=1;i<=10;i++){ h1=h1/2; h2=h1*2; sum+=h2; //System.out.println(\"第\"+i+\"次反弹\"+h1+\"米\"); } System.out.println(\"共经过了\"+(sum-h2)+\"米\"); System.out.println(\"第十次反弹\"+h1+\"米\"); } 评分标准: 4、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写一个程序,要求输入一个整数,将各位数字反序后输出。 ~ 参考程序如下: import java.util.*; public class 输出反序数字 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int right_number; while(n!=0){ right_number=n%10; System.out.print(right_number); n/=10; } } } 评分标准: 3 5、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉了一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩一个桃子了。求第一天共摘了多少桃子。 ~ 参考程序如下: public class 猴子吃桃 { public static void main(String[] args) { int number=1; for(int i=10;i>1;i--){ number=(number+1)*2; } System.out.println(\"第一天总共摘了\"+number+\"个桃子。\"); } } 评分标准: 6、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写一个Java Application类型的程序,从键盘上输入三角形的三条边的长度,计算三角形的面积和周长并输出。根据三角形边长求面积公式如下: ,其中a、b、c为三角形的三条边,s=(a+b+c)/2。 ~ 参考程序如下: import java.io.*; public class 三角形 { public static void main(String[] args) throws IOException { InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); double a, b, c, s, area; String str; str = br.readLine(); a = Double.parseDouble(str); str = br.readLine(); b = Double.parseDouble(str); str = br.readLine(); c = Double.parseDouble(str); if (a + b <= c || a + c <= b || c + b <= a) { System.out.println(\"输入边构不成三角形!\"); return; } s = (a + b + c) / 2.0; 4 area = Math.sqrt(s * (s - a) * (s - b) * (s - c)); System.out.println(\"area = \" + area); } } 评分标准: 7、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写一个程序,要求读入若干个整数,统计出正整数个数和负整数个数,读入0则结束。 ~ 参考程序如下: import java.util.*; public class 统计负整数正整数 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int i=0,j=0,num; num=sc.nextInt(); while(num!=0){ if(num>0)i++; if(num<0)j++; num=sc.nextInt(); } System.out.println(\"正整数的个数有\"+i+\"个\"); System.out.println(\"负整数的个数有\" +j+\"个\"); } } 评分标准: 8、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写一个Java Application类型的程序,从键盘上输入摄氏温度C,计算华氏温度F的值并输出。其转换公式如下: F = (9 / 5) * C + 32 ~ 参考程序如下: import java.io.*; public class 华氏温度 { public static void main(String[] args) throws IOException { InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); double C, F; 5 String str; str = br.readLine(); C = Double.parseDouble(str); F = (9 / 5.0) * C + 32; System.out.println(\"F = \" + F); } } 评分标准: 9、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写打印“九九乘法口诀表”的程序。 ~ 参考程序如下: public class 九九乘法表 { public static void main(String[] args) { int i, j; for(i=1;i<10;i++){ for(j=1;j<=i;j++) System.out.print(i + \"x\" + j +\"=\" + i*j + \"\\"); System.out.println(\"\"); } } } 10、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写一个程序,接受用户输入的两个数据为上、下限,然后输出上、下限之间的所有素数。 ~ 参考程序如下: import java.io.*; public class 素数 { public static void main(String[] args) throws IOException{ InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); int top, bottom, i, j,m=0; System.out.print(\"请输入上限:\"); top = Integer.parseInt(br.readLine()); System.out.print(\"请输入下限:\"); bottom = Integer.parseInt(br.readLine()); if(top for(i=bottom; i<=top; i++){ int k = (int)Math.sqrt(i); for(j=2; j<=k; j++){ if(i % j == 0) break; } if(j>k) { if(m%4==0) { System.out.println(); } m++; System.out.print(i + \"\\"); } } System.out.println(); } } 评分标准: 11、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 已知一个数值矩阵A为 ,另一个矩阵B为 ,求出A与B的乘积矩阵C[3][4]并输出出来,其中C中的每个元素C[i][j]等于 。 ~ 参考程序如下: import java.io.*; public class 矩阵成绩 { public static void main(String[] args) { final int M = 3, N = 4, P = 4; int i, j, k; int[][] a = { { 3, 0, 4, 5 }, { 6, 2, 1, 7 }, { 4, 1, 5, 8 } }; int[][] b = { { 1, 4, 0, 3 }, { 2, 5, 1, 6 }, { 0, 7, 4, 4 }, { 9, 3, 6, 0 } }; int[][] c = new int[M][N]; for (i = 0; i < M; i++) for (j = 0; j < N; j++) for (k = 0; k < P; k++) c[i][j] += a[i][k] * b[k][j]; for (i = 0; i < M; i++) { for (j = 0; j < N; j++) System.out.print(c[i][j] + \"\\"); System.out.println(); } 7 } } 评分标准: 12、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序,读取一个在0和1000之间的整数,并将该整数的各位数字加和。 ~ 参考程序如下: import java.util.Scanner; public class Question2 { public static void main(String[] args){ //初始化,数据准备 int inputNum;//用户输入的整数 int sum;//整数的各位数字和 //输入,读取一个整数 inputNum = getInput(); //运算,整数的各位数字相加 sum = getResult(inputNum); //输出,整数的各位数字和 showResult(inputNum,sum); } static int getInput(){ int num=0; Scanner sc = new Scanner(System.in); boolean isValidNum = false; while (!isValidNum){ System.out.println(\"请输入一个在0和1000之间的整型数:\"); num = sc.nextInt(); if (num > 0 && num < 1000){ isValidNum = true; } else { System.out.println(\"您输入的数字不合法!\"); } } return num; } static int getResult(int Num){ int result = 0; 8 int temp = Num;//方便计算的临时变量 while (temp>0){ result += temp % 10;//余数就是末位数字 temp = temp / 10;//去掉末位数字 } return result; } static void showResult(int num,int result){ System.out.println(\"num=\"+num); System.out.println(\"result=\"+result); } } 评分标准: 13、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序对数组a={20,39,45,78,43,23,45,89,131}进行排序,输出各个元素并求出数组当中的最大值和最小值及平均值。 ~ 参考程序如下: import java.util.Arrays; public class 数组排序 { public static void main(String[] args) { int[] a={20,39,45,78,43,23,45,89,131}; Arrays.sort(a); System.out.println(\"排序后的数组元素为:\"); int sum=0; float av=0.0f; for(int i=0;i ~~~b 9 使用匿名内部类编写程序,程序运行界面如下所示。当依次点击“新建”、“打开”、“保存”、“打印”按钮时,要求得到的输出信息如下: ~ 参考程序如下: import javax.swing.*; import java.awt.event.*; public class Question18 extends JFrame{ public Question18(){ JButton jbtNew = new JButton(\"新建\"); JButton jbtOpen = new JButton(\"打开\"); JButton jbtSave = new JButton(\"保存\"); JButton jbtPrint = new JButton(\"打印\"); JPanel panel = new JPanel(); panel.add(jbtNew); panel.add(jbtOpen); panel.add(jbtSave); panel.add(jbtPrint); add(panel); jbtNew.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ System.out.println(\"响应新建按钮被点击的动作\"); } } ); jbtOpen.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ System.out.println(\"响应打开按钮被点击的动作\"); } } ); jbtSave.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ System.out.println(\"响应保存按钮被点击的动作\"); } } 10 ); jbtPrint.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ System.out.println(\"响应打印按钮被点击的动作\"); } } ); } public static void main(String[] args){ JFrame frame = new Question18(); frame.setTitle(\"匿名内部类监听器演示\"); frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack();//依据放在框架中组件的大小来自动调整框架的大小 frame.setVisible(true); } } 评分标准: 15、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序实现点击放大或者缩小按钮时可以改变圆的大小。程序运行界面如下所示。实现一个按钮的功能即可。 ~ 参考程序如下: import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Question19 extends JFrame{ private JButton jbtEnlarge = new JButton(\"放大\"); private JButton jbtShrink = new JButton(\"缩小\"); private CirclePanel canvas = new CirclePanel(); public Question19(){ JPanel panel = new JPanel(); panel.add(jbtEnlarge); panel.add(jbtShrink); 11 this.add(canvas, BorderLayout.CENTER); this.add(panel, BorderLayout.SOUTH); jbtEnlarge.addActionListener(new EnlargeListener()); } public static void main(String[] args){ JFrame frame = new Question19(); frame.setTitle(\"控制圆\"); frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(200, 200); frame.setVisible(true); } class EnlargeListener implements ActionListener{ public void actionPerformed(ActionEvent e){ canvas.enlarge(); } } class CirclePanel extends JPanel{ private int radius = 5; public void enlarge(){ radius++; repaint(); } protected void paintComponent(Graphics g){ super.paintComponent(g); g.drawOval(getWidth()/2 - radius, getHeight()/2 - radius, 2*radius, 2* radius); } } } 16、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序,求1+3+7+15+…+(220-1) ~ 参考程序如下: 12 public class 求表达式值1 { public static void main(String[] args) { int i=0,sum=0,m=1; for(i=1;i<=20;i++){ m*=2; sum+=m-1; } System.out.println(\"表达式的值是:\"+sum); } } 评分标准: 17、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 已知,s=1-1/2+1/3-1/4+…+1/(n-1)-1/n,编写程序,求n=100时,s的值。 ~ 参考程序如下: public class 求表达式值2 { public static void main(String[] args) { int k=1,i; double s=0; for(i=1;i<101;i++){ s=s+(double)k/(double)i; k=-k; } i--; System.out.println(\"n=\"+i+\"时,s=\"+s); } } 评分标准: 18、写出能完成题目要求功能的可正常运行的java程序,给满分,否则0分 ~~~b 编写程序,使用FileInputStream类对象读取程序本身并显示在屏幕上。 ~ 参考程序如下: import java.io.*; public class FileInputStreamTest { public static void main(String[] args) throws IOException { FileInputStream fis = new FileInputStream(\"FileInputStreamTest.java\"); 13 byte[] bbuf = new byte[1024]; int hasRead = 0; while ((hasRead = fis.read(bbuf)) > 0 ) { System.out.print(new String(bbuf , 0 , hasRead )); } fis.close(); } } 评分标准: 19、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0 ~~~b 编写程序,从键盘上任意输入两个整数,并将其结果按格式打印输出。程序运行效果示意图如下:。 ~ 参考程序如下: import java.util.*; public class TestOutputFormat { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); int i1 = sc.nextInt(); int i2 = sc.nextInt(); System.out.println(i1 + \"×\" + i2 + \"=\" + (i1 * i2)); } catch (InputMismatchException e) { System.out.println(\"数据输入格式不正确!\"); } } } 评分标准: 20、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序求解1!+2!+3!+……+10!的值,并在屏幕上输出,要求用递归的方法求一个数的阶乘。 ~ 14 参考程序如下: public class 阶乘和 { public long f(int n){ if(n==1) return 1; else return n*f(n-1); } public static void main(String[] args) { 阶乘和 xx=new 阶乘和(); long sum=0; for(int i=1;i<11;i++){ sum+=xx.f(i); } System.out.println(\"1—10的阶乘和为:\"+sum); } } 评分标准: 21、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分。 ~~~b 有四本书,书名分别为“Java2核心技术”,\"Java应用程序设计基础教程\案例开发大全\大学教程\"。要求编写程序,将这四本书的名字每隔一秒钟动态的输出在屏幕上。 ~ 参考程序如下: public class 动态输出 { public static void main(String[] args) { String[] s={\"Java2核心技术\应用程序设计基础教程\案例开发大全\大学教程\ Thread t=new MyThread4(s); t.start(); } } class MyThread4 extends Thread{ private String[] s; public MyThread4(String[] s){ this.s=s; } public void run(){ 15 for(int i=0;i 22、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序,从键盘上任意输入两个整数,并将其成绩结果按格式打印输出。程序运行效果图如下: ~ 参考程序如下: import java.util.*; public class TestOutputFormat { public static void main(String[] args) { try { Scanner sc = new Scanner(System.in); int i1 = sc.nextInt(); int i2 = sc.nextInt(); System.out.println(i1 + \"×\" + i2 + \"=\" + (i1 * i2)); } catch (InputMismatchException e) { System.out.println(\"数据输入格式不正确!\"); } } } 评分标准: 23、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 当用户输入的数据中有小写的字母时,自动转换为大写字母。编写程序完成该功能,要求有必要的异常处理。 ~ 参考程序如下: import java.io.*; 16 public class 异常处理1 { public static void main(String[] args) { BufferedReader bf=new BufferedReader(new InputStreamReader(System.in)); String s=null; System.out.println(\"请输入一个字符串\"); while(true){ try{ s=bf.readLine(); if(s.length()<=0){ System.out.println(\"请输入字符串!\"); } else{ break; } }catch(IOException e){ continue; } } String s2=s.toUpperCase(); System.out.println(s2); } } 评分标准: 24、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 利用循环控制语句,输出如下图所示数字塔。 ~ 参考程序如下: public class 数字塔 { public static void main(String[] args) { for(int i=1;i<=9;i++){ for(int k=1;k<=i;k++) System.out.print(i); for(int j=2*(9-i);j>=1;j--) System.out.print(\" \"); for(int k=1;k<=i;k++) System.out.print(i); System.out.println(); } } 17 } 评分标准: 25、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 双色球福利彩票的摇奖规则是从号码为1-33的红色球中随机选取六个,从号码为1-16的蓝色球中随机选取一个组成号码。编写程序,模拟双色球福利彩票开奖号码生成过程。 ~ 参考程序如下: public class 预测双色球 { public static void main(String[] args) { String s=\"\"; int red=0; int blue=0; for(int i=0;i<6;i++){ red=(int)(Math.random()*33)+1; s+=red+\" \"; } blue=(int)(Math.random()*16)+1; s+=blue; System.out.println(\"本次预测的双色球号码为:\"+s); } } 评分标准: 26、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序,要求用递归的方法求解表达式1×2+2×3+3×4+4×5+5×6+6×7+7×8+8×9+9×10的值,并将结果按格式1×2+2×3+3×4+4×5+5×6+6×7+7×8+8×9+9×10=330形式输出。 ~ 参考程序如下: public class 表达式值 { //递归方法 public static int fn(int n){ int result; if(n==1) result=2; else result=fn(n-1)+2*n; return result; } 18 public static void main(String[] args) { int sum=0,i; for(i=1;i<9;i++){ System.out.print(i+\"×\"+(i+1)+\"+\"); sum+=fn(i); } System.out.print(i+\"×\"+(i+1)+\"=\"+(sum+fn(i))); } } 评分标准: 27、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0分 ~~~b 编写程序,利用循环控制语句输出如下数字金字塔图形。 1 2 2 2 3 3 3 3 3 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 ~ 参考程序如下: public class 金字塔 { public static void main(String[] args) { int row=9; for(int i=1;i<=row;i++){ for(int j=row;j>=i;j--){ System.out.print(\" \"); } for(int k=i;k>=1;k--){ System.out.print(i<10?\" \"+i:i); } for(int l=2;l<=i;l++){ System.out.print(i<10?\" \"+i:i); } System.out.println(); } } 19 } 评分标准: 1、写出能完成题目要求功能的、可正常运行的java程序,给满分,否则0 20 因篇幅问题不能全部显示,请点此查看更多更全内容