Java编程练习题

上传人:奔*** 文档编号:26978736 上传时间:2021-08-15 格式:DOC 页数:28 大小:242.01KB
返回 下载 相关 举报
Java编程练习题_第1页
第1页 / 共28页
Java编程练习题_第2页
第2页 / 共28页
Java编程练习题_第3页
第3页 / 共28页
点击查看更多>>
资源描述
Java编程练习题一般题:1、 编写一个应用程序,对程序中给定的四个double型数据求其最大值和最小值。public class Java1_1 public static void main(String args)double a =8.2,3.8,15.1,9.0;double max = 0,min=0;System.out.print(四个数分别为:);for(int i=0;ia.length;i+)System.out.print(ai+ ); for(int i=0;iai+1)max=ai;else if(aiai+1)min=ai;System.out.println();System.out.println(四个数中最大值为:+max);System.out.println(四个数中最小值为:+min);2、 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6的因子为1、2、3,而6=1+2+3。因此6是“完数”。编写一个小应用程序求1000之内的所有完数public class Java1_2 public static void main(String args) System.out.print(1000内的完数为:);for(int i=1;i=1000;i+)int a=0;for(int j=1;j=1;i-)BigDecimal b = new BigDecimal(i);fac=fac.multiply(b);System.out.println(1000!为:+fac);4、 设计一个能随机产生100个大写英文字母的方法,在该方法中统计产生了多少个元音字母,并输出这个数字。public class Java1_4 public static void main(String args) char ch = new char100;int count=0;System.out.println(随机产生的100个大写字母分别为:);for(int i=0;i100;i+)int a = (int)(Math.random()*26);chi = (char)(a+65);System.out.print(chi+ );if(i+1)%5=0)System.out.println();for(int i=0;i100;i+)if(chi=A | chi=E| chi=I | chi=O | chi=U)count+;System.out.println(其中元音字母有+count+个!);5、 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第3个月后每个月又生一对兔子,假如兔子不死,问每个月的兔子总数为多少?import java.util.Scanner;public class Java1_5 public static void main(String args) Scanner scanner = new Scanner(System.in);System.out.print(请输入月数:);int m = scanner.nextInt();System.out.println(第1个月的兔子对数: 1);System.out.println(第2个月的兔子对数: 1);int f1 = 1, f2 = 1, f;for(int i=3; i=m; i+) f = f2; f2 = f1 + f2; f1 = f; System.out.println(第 + i +个月的兔子对数: +f2);6、 打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153=1的三次方5的三次方3的三次方。public class Java1_6 public static void main(String args) int bit = 0,ten = 0,hun = 0;System.out.print(水仙花数有:);for(int n=100;n1000;n+)if(n1000)bit=n%10;ten=n%100/10;hun=n/100;if(bit*bit*bit+ten*ten*ten+hun*hun*hun=n)System.out.print(n+ );7、 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。import java.io.*;public class Java1_7 public static void main(String args) throws IOException BufferedReader buf;String str;int a = 0,b = 0,c = 0,d=0;buf = new BufferedReader(new InputStreamReader(System.in);System.out.print(请输入一串字符:);str = buf.readLine();char ch=str.toCharArray();for(int i=0;i=a & chi=A & chi=0 & chi=9)b+;else if(chi= )c+;else d+;System.out.println(英文字母有:+a+个);System.out.println(数字有:+b+个);System.out.println(空格有:+c+个);System.out.println(其它字符有:+d+个);8、 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?public class Java1_8 public static void main(String args) double height = 100,sum = 100;for(int i=1;i0 & n10 & n20 & n40 & n60 & n0;i-)n=(n+1)*2;System.out.println(第一天共摘了+n+个桃子);11、 利用递归方法求5!。public class Java1_11 public static void main(String args) int fac=1;for(int i=1;i=5;i+)fac=fac*i;System.out.println(5!为:+fac);12、 求一个3*3矩阵对角线元素之和.import java.util.Scanner;public class Java1_12 public static void main(String args)Scanner scanner = new Scanner(System.in);int number = new int33;System.out.println(请输入9个整数:);for(int i=0; i3; i+) for(int j=0; j3; j+) numberij = scanner.nextInt(); System.out.println(输入的3 * 3 矩阵是:);for(int i=0; i3; i+) for(int j=0; j3; j+) System.out.print(numberij + ); System.out.println();int sum=0;for(int i=0;i3;i+)for(int j=0;j3;j+)if(i=j)sum+=numberij;System.out.println(矩阵的对角线元素之和为:+sum);13、 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。import java.util.Scanner;public class Java1_13 public static void main(String args) Scanner scanner = new Scanner(System.in);System.out.print(请输入6个数据:);float number=new float6;for(int i=0;i6;i+)numberi=scanner.nextFloat();float max=number0,min=number0,temp;int a = 0,b=0;for(int i=0;imax)max=numberi;a= i;if(numberimin)min=numberi;b= i;if(a!=0)temp=number0;number0=numbera;numbera=temp;if(b!=number.length-1)temp=numbernumber.length-1;numbernumber.length-1=numberb;numberb=temp;System.out.print(调换顺序后:);for(int i=0;inumber.length;i+)System.out.print(numberi+ );14、 定义复数的类Complex并测试其功能:1. 复数由实部、虚部两个部分组成,在类的定义中应包含保存这两部分信息的内容。2. 在类中定义构造函数,使用户能够在构造对象的同时为对象赋初值。3. 在类中定义复数的加法、减法、乘法三个二元操作符来完成复数间的加、减、乘的功能。4. 通过重载tosthing,使得Complex类的对象能够显示其自身信息。5. 通过显示定义一个成员函数完成对象的赋值操作,使用户能够对Complex类的对象进行赋值。6. 编写一段主程序(main函数),使用户能够通过这段主程序输入复数并进行复数的计算。15、 建立一个银行账户类,要求能够存放用户的账号、姓名、密码和账户余额等个人信息,并包含存款、取款、查询余额和修改账户密码等操作,并用此类创建对象,对象的账号为100,姓名为Tom,密码为11111,账户余额为10000。import java.util.Scanner;public class Java1_15 public static void main(String args)Login();public static void Login()System.out.println(请登录: );System.out.print( 请输入账号:);Scanner scanner = new Scanner(System.in);String Id = scanner.nextLine();System.out.print( 请输入密码:);String Pwd = scanner.nextLine();System.out.println();boolean flag = Customer.login(Id, Pwd);if(flag=true)Menu.menu();elseSystem.out.println(您输入的用户名或密码有错误,请重新输入!);Login();class Customer private String Id, Pwd, Name;private int Mony;static String id,name,pwd;static int mony;public Customer()public Customer(String id, String pwd)this.Id=id;this.Pwd=pwd;public void setId(String id)this.Id=id;public String getId()return this.Id;public void setName(String name)this.Name=name;public String getName()return this.Name;public void setPwd(String pwd)this.Pwd=pwd;public String getPwd()return this.Pwd;public static boolean login(String ID, String PWD)boolean flag = false;Customer cm0 = new Customer(123,123);cm0.Name=abc;cm0.Mony=2000;Customer cm1 = new Customer(456,456);cm1.Name=def;cm1.Mony=3000;Customer cm2 = new Customer(789,789);cm2.Name=fgh;cm2.Mony=4000;String customer_Id=cm0.Id,cm1.Id,cm2.Id;String customer_Pwd=cm0.Pwd,cm1.Pwd,cm2.Pwd;String customer_Name=cm0.Name,cm1.Name,cm2.Name;int customer_Mony=cm0.Mony,cm1.Mony,cm2.Mony;for(int i=0;i100 1000300 5000500 其它金额-6);System.out.println();Scanner scanner = new Scanner(System.in);int m=scanner.nextInt();switch(m)case 1:if(Customer.mony-1000)System.out.println(余额不足,请重新选择!);System.out.println();DrawMony();elseCustomer.mony=Customer.mony-100;System.out.println(取款成功!);System.out.println(账户余额为:+Customer.mony);System.out.println();System.out.println(是否继续取款?);System.out.println(0、是 1、否);int c = scanner.nextInt();if(c=0)System.out.println();DrawMony();else System.out.println();menu();System.out.println();break;case 2:if(Customer.mony-3000)System.out.println(余额不足,请重新选择!);System.out.println();DrawMony();elseCustomer.mony=Customer.mony-300;System.out.println(取款成功!);System.out.println(账户余额为:+Customer.mony);System.out.println();System.out.println(是否继续取款?);System.out.println(0、是 1、否);int c = scanner.nextInt();if(c=0)System.out.println();DrawMony();else System.out.println();menu();System.out.println();break;case 3:if(Customer.mony-5000)System.out.println(余额不足,请重新选择!);System.out.println();DrawMony();elseCustomer.mony=Customer.mony-500;System.out.println(取款成功!);System.out.println(账户余额为:+Customer.mony);System.out.println();System.out.println(是否继续取款?);System.out.println(0、是 1、否);int c = scanner.nextInt();if(c=0)System.out.println();DrawMony();else System.out.println();menu();System.out.println();break;case 4:if(Customer.mony-10000)System.out.println(余额不足,请重新选择!);System.out.println();DrawMony();elseCustomer.mony=Customer.mony-1000;System.out.println(取款成功!);System.out.println(账户余额为:+Customer.mony);System.out.println();System.out.println(是否继续取款?);System.out.println(0、是 1、否);int c = scanner.nextInt();if(c=0)System.out.println();DrawMony();else System.out.println();menu();System.out.println();break;case 5:if(Customer.mony-50000)System.out.println(余额不足,请重新选择!);System.out.println();DrawMony();elseCustomer.mony=Customer.mony-5000;System.out.println(取款成功!);System.out.println(账户余额为:+Customer.mony);System.out.println();System.out.println(是否继续取款?);System.out.println(0、是 1、否);int c = scanner.nextInt();if(c=0)System.out.println();DrawMony();else System.out.println();menu();System.out.println();break;case 6:System.out.print(请输入取款金额:);int mony = scanner.nextInt();if(Customer.mony-mony0 & mony%100=0)Customer.mony=Customer.mony+mony;System.out.println(存款成功!);System.out.println(账户余额:+Customer.mony);System.out.println();System.out.println(是否继续存款?);System.out.println(0、是 1、否);int c = scanner.nextInt();if(c=0) System.out.println();SaveMony();else System.out.println();menu();System.out.println();elseSystem.out.println(存款金额必须为100的整数倍!);System.out.println();SaveMony();public static void TransferMony()Scanner scanner = new Scanner(System.in);System.out.print(请输入账号:);int a= scanner.nextInt();System.out.print(请在此输入:);int b=scanner.nextInt();System.out.print(请输入转账金额:);int mony=scanner.nextInt();if(a=b)if(Customer.mony-mony0)Customer.mony=Customer.mony-mony;System.out.println(转账成功!);System.out.println(账户余额:+Customer.mony);System.out.println();System.out.println(是否继续转账?);System.out.println(0、是 1、否);int c = scanner.nextInt();if(c=0) System.out.println();TransferMony();else System.out.println();menu();elseSystem.out.println(余额不足,请重新输入!);System.out.println();TransferMony();elseSystem.out.println(两次输入账号不一致,请重新输入!);System.out.println();TransferMony();public static void CheckMony()Scanner scanner = new Scanner(System.in);System.out.println(用户名:+Customer.name);System.out.println(用户ID:+Customer.id);System.out.println(账户余额:+Customer.mony);System.out.println(返回主菜单);int a=scanner.nextInt();if(a=0)System.out.println();menu();elseSystem.out.println();menu();16、 有哺乳动物类mammal,将其作为父类,从其派生出子类猫cat和子类狗dog,基类中有方法speak()。class mammalString name,kind;int age;public mammal(String n, int a, String k)this.name=n;this.age=a;this.kind=k;public void speak(String s)System.out.println(叫声为:+s);public void print()System.out.println(名字为:+this.name);System.out.println(年龄为:+this.age);System.out.println(种类为:+this.kind);class dog extends mammalpublic dog()super(小狗,2,狗);class cat extends mammalpublic cat()super(小猫,3,猫);public class Java1_16 public static void main(String args) mammal dog = new dog();mammal cat = new cat();dog.print();dog.speak(汪);System.out.println();cat.print();cat.speak(喵);17、 求100之内的素数public class Java1_17 public static void main(String args) boolean flag = false;System.out.print(100以内的素数有:2 3 );for(int i=3;i=100;i+=2)for(int j=2;j=Math.sqrt(i);j+)if(i%j=0)flag=false;break;else flag=true;if(flag=true)System.out.print(i+ );18、 对10个数进行排序 import java.util.Scanner;public class Java1_18 public static void main(String args) int number = new int10;Scanner scanner = new Scanner(System.in);System.out.print(请输入10个数:);for(int i=0;inumber.length;i+)numberi=scanner.nextInt();for(int i=0;inumber.length;i+)for(int j=0;jnumberj)int temp = numberj;numberj=numberi;numberi=temp;for(int i=0;inumber.length;i+)System.out.print(numberi+ );19、 从键盘上输入10个整数,并将其放入一个一维数组中,然后将其前5个元素与后5个元素对换,即:第1个元素与第10个元素互换,第2个元素与第9个元素互换第5个元素与第6个元素互换。分别输出数组原来各元素的值和对换后各元素的值。import java.util.Scanner;public class Java1_19 public static void main(String args) int number=new int10;int b=0;Scanner scanner = new Scanner(System.in);System.out.print(请输入10个整数:);for(int i=0;inumber.length;i+)numberi=scanner.nextInt();for(int i=0;inumber.length/2;i+)int temp=numberi;numberi=numberi+9-b;numberi+9-b=temp;b+=2;System.out.print(对换后顺序为:);for(int i=0;inumber.length;i+)System.out.print(numberi+ );20、 设计一个圆类,将圆的位置(圆心坐标和半径)作为属性(提供任意圆的设置),并能计算圆的面积。class Pointfloat x,y;public Point(float a, float b)this.x=a;this.y=b;public void setX(float a)this.x=a;public void setY(float b)this.y=b;public float getX()return this.x;public float getY()return this.y;class CirclePoint point = new Point(0,0);float radius;public Circle(Point p,float r)this.point=p;this.radius=r;public void setRadius(float r)this.radius=r;public float getRadius()return this.radius;public void Area(float radius)double area=Math.PI*radius*radius;System.out.println(圆面积为:+area);public void Perimer(float radius)double perimer=2*Math.PI*radius;System.out.println(圆周长为:+perimer);public void prin
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 机械制造 > 工业自动化


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!