《JAVA习题》word版.doc

上传人:wuy****n92 文档编号:53844302 上传时间:2022-10-26 格式:DOC 页数:12 大小:47.51KB
返回 下载 相关 举报
《JAVA习题》word版.doc_第1页
第1页 / 共12页
《JAVA习题》word版.doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《《JAVA习题》word版.doc》由会员分享,可在线阅读,更多相关《《JAVA习题》word版.doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、实验2要求输入两个整数,输出这两个整数的和、差、积、商import javax.swing.JOptionPane; / program uses JOptionPanepublic class P2 / main method begins execution of Java application public static void main( String args ) String firstNumber; / first string entered by user String secondNumber; / second string entered by user int n

2、umber1; int number2; int he,cha,ji,shang; / read in first number from user as a string firstNumber = JOptionPane.showInputDialog( Enter first integer ); / read in second number from user as a string secondNumber = JOptionPane.showInputDialog( Enter second integer ); / convert numbers from type Strin

3、g to type int number1 = Integer.parseInt( firstNumber ); number2 = Integer.parseInt( secondNumber ); he = number1 + number2; cha= number1 - number2; ji = number1 * number2; shang=number1 / number2; / display result System.out.println(和是: + he+n差是:+cha+n积是: + ji+n商是:+shang); JOptionPane.showMessageDi

4、alog( null, 和是: + he+n差是:+cha+n积是: + ji+n商是:+shang, Results, JOptionPane.PLAIN_MESSAGE ); System.exit( 0 ); / terminate application with window / end method main / end class Addition实验31、 编写一个应用程序,要求用户输入一个圆的半径(double类型),然后计算并输出圆的直径、周长、面积等信息。(把一个字符串转换为double类型数据的方法为Double.parseDouble(String s))import

5、 javax.swing.JOptionPane;import java.text.DecimalFormat;public class P3_1public static void main(String args)String r;r=JOptionPane.showInputDialog(请输入一个圆的半径:);double radius;radius=Double.parseDouble(r);double zhijing,l,s;final double P=Math.PI;zhijing=2*radius;l=2*P*radius;s=P*Math.pow(radius,2);De

6、cimalFormat f=new DecimalFormat(0.00);/System.out.println (圆的半径是:+radius+n+直径是:+zhijing+n周长是:+f.format(l)+n面积是:+f.format(s);JOptionPane.showMessageDialog(null,圆的半径是:+radius+n+直径是:+zhijing+n周长是:+f.format(l)+n面积是:+f.format(s),显示结果,JOptionPane.INFORMATION_MESSAGE);2、编写一个应用程序,要求用户输入两个整数,然后输出两个整数中的最大值。im

7、port javax.swing.JOptionPane;public class P3_2public static void main(String args)String s1,s2;s1=JOptionPane.showInputDialog(请输入第一个整数:);s2=JOptionPane.showInputDialog(请输入第二个整数:);int n1,n2;n1=Integer.parseInt(s1);n2=Integer.parseInt(s2);int max;max=n1n2?n1:n2;System.out.println (n1+和+n2+的最大值是:+max);

8、实验四1、 输入一个年份,一个月份(使用一个BufferedReader),判断该年该月有多少天(使用switch,注意要判断2月是多少天)import java.io.*;public class P4_1public static void main(String args)throws IOExceptionString s1,s2;int year,month;BufferedReader br=new BufferedReader(new InputStreamReader(System.in);System.out.print(请输入一个年份:);s1=br.readLine();

9、System.out.print (请输入一个月份:);s2=br.readLine();year=Integer.parseInt(s1);month=Integer.parseInt(s2);switch(month)case 1:case 3:case 5:case 7:case 8:case 10:case 12:System.out.println (year+年+month+月+有31天);break;case 4:case 6:case 9:case 11:System.out.println (year+年+month+月+有30天);break;case 2:if(year%

10、4=0&year%100!=0)|(year%400=0)System.out.println (year+年+month+月+有29天);elseSystem.out.println (year+年+month+月+有28天);break;default:System.out.println (你输入的月份是错误的!);2、 如果一个数按反向顺序放置后仍然与原数相等,称为回文数(如: 12321)。编程:输入一个5位数,判断此数是否为回文数。import java.io.*;public class P4_2public static void main(String args)throws

11、 IOExceptionBufferedReader br=new BufferedReader(new InputStreamReader(System.in);System.out.print(请输入一个5位数:);String s1=br.readLine();int n=Integer.parseInt(s1);int n1,n2,n3,n4,n5;n1=n/10000;/n2=(n-10000*n1)/1000;n2=n%10000/1000;n3=n%1000/100;n4=n%100/10;n5=n%10;if(n1=n5&n2=n4)System.out.println (n+

12、是回文数。);elseSystem.out.println (n+不是回文数。);实验53、 求 S=a+aa+aaa+aaaaa 之值,其中a是一个数字。例如:2+22+222+2222+22222(此时n=5), a和n要求用户由键盘输入。(有规律的式子求和,注意找到前后两项之间的关系,该题中后一项等于前一项的10倍加a)import java.io.*;public class P5_1public static void main(String args)throws IOExceptionBufferedReader br=new BufferedReader(new InputSt

13、reamReader(System.in);String s1,s2;System.out.print(请输入一个1-9的数字:);s1=br.readLine();System.out.print(请输入项数:);s2=br.readLine();int a,n;a=Integer.parseInt(s1);n=Integer.parseInt(s2);int p=0,sum=0;for(int i=1;i=n;i+)p=p*10+a;sum+=p;for(int i=1;i=n;i+)for(int j=1;j=i;j+)System.out.print(a);if(in)System.o

14、ut.print(+);else if(i=n)System.out.print(=);System.out.println (sum);4.编写一个应用程序,要求用户输入5个整数(使用循环结构),输出这五个整数的最大值和最小值。import java.io.*;public class P5_2public static void main(String args)throws IOExceptionBufferedReader br=new BufferedReader(new InputStreamReader(System.in);String s;int max=Integer.MI

15、N_VALUE,min=Integer.MAX_VALUE;int i=1;while(imax)max=n;if(n=0;i-)s+=a.charAt(i);return s;public static void reverse(String a)int n=a.length();for(int i=n-1;i=0;i-)System.out.print(a.charAt(i);System.out.println ();public static void main(String args)throws IOExceptionBufferedReader br=new BufferedRe

16、ader(new InputStreamReader(System.in);String s;doSystem.out.print(请输入一个字符串:);s=br.readLine();if(s.equals(0)break;elseP6_1.reverse(s);while(s.equals(0)=false);2、编写一个静态方法用于求任意两个正整数的最大公约数,调用此方法求16和24的最大公约数。备注:求最大公约数使用辗转相除法,我国古代数学家秦九韶1247年在数书九章中记载了此方法,其处理过程如下:(1)提供两个数m和n(2)以n除m,求得余数r(r=m%n)(3)判断r是否为0,若r

17、=0,此时的n值即为最大公约数,计算结束。若r0,更新被除数和除数,n送m(即m=n),r送n(即nr),转到(2)。public class P6_2public static int factor(int n,int m)int r=m%n;while(r!=0)m=n;n=r;r=m%n;return n;public static void main(String args)int n=P6_2.factor(16,24);System.out.println (n);实验七1,编写递归方法gcd,返回x和y的最大公约数。x和y的最大公约数方法gcd的递归定义如下:如果y等于0,则gc

18、d(x,y)就是x;否则,gcd(x,y)就等于gcd(y,x%y),其中“%”是求模运算符。public class P7_1public static int gcd(int x,int y)if(y=0)return x;elsereturn gcd(y,x%y);public static void main(Stringargs)int k=10,m=80;int n=gcd(k,m);System.out.println (n);2,编写递归方法 getPower(int x,int y),用于计算x的y次幂,在main主方法中调用它求2的10次幂。public class P7_

19、2public static int getPower(int x,int y)if(y=1)return x;elsereturn x*getPower(x,y-1);public static void main(Stringargs)System.out.println (P7_2.getPower(2,10);3、n从键盘输入,n是一个小于10的数。编写一个方法public static void shuChu(int n)用循环语句输出如下图所示的n行三角形图形。提示:使用字母的ACSII码输出该字母,字母A对应65,字母B对应66 A BBB CCCCC DDDDDDD impor

20、t java.io.*;public class P7_3public static void shuChu(int n)for(int i=1;i=n;i+)for(int j=1;j=n-i;j+)System.out.print( );for(int j=1;j=2*i-1;j+)System.out.print(char)(64+i);System.out.println ();public static void main(Stringargs)throws IOExceptionBufferedReader br=new BufferedReader(new InputStream

21、Reader(System.in);System.out.print(请输入n的值:);String s=br.readLine();int n=Integer.parseInt(s);P7_3.shuChu(n);实验八1、 定义一个数组来存储12个学生的成绩72,89,65,58,87,91,53,82,71,93,76,68,计算并输出学生的平均成绩。(要求:计算平均成绩的过程定义为方法)import java.text.DecimalFormat;public class P8_1static double ave(int n)int sum=0;for(int i=0;in.leng

22、th;i+)sum=sum+ni;double a=(double)(sum)/n.length;DecimalFormat f=new DecimalFormat(0.00);return Double.parseDouble(f.format(a);public static void main(Stringargs)int score=72,89,65,58,87,91,53,82,71,93,76,68;System.out.println (P8_1.ave(score);2、 定义一个数组来存储12个学生的成绩72,89,65,58,87,91,53,82,71,93,76,68,

23、统计各成绩等级(90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E)学生人数,并将其放入到数组count中,其中:count0存E级的人数,count1存D级的人数,count4存A级的人数。(提示:注意要找到各分数段同数组count的下标的关系)public class P8_2public static void main(Stringargs)int score=72,89,65,58,87,91,53,82,71,93,76,68;int count=new int5;for(int i=0;iscore.length;i+)if(scorei=100)co

24、unt4+;else if(scorei60)count0+;elsecountscorei/10-5+;for(int i=0;icount.length;i+)System.out.println (char)(69-i)+t+counti);3、 从键盘输入10个整数,将奇数和偶数分别存入到两个不同的数组中,并按奇数、偶数交替的顺序输出这两个数组中的所有数据(先交替输出,如果奇数个数多,则再输出剩下的奇数,如果偶数个数多,则再输出剩下的偶数)。(提示与要求:(1)定义一个数组存储从键盘输入的10个整数,先判断这10个整数中奇数和偶数的个数,才能定义存储奇数和偶数的数组的长度;(2)把分拣

25、奇数和偶数并交替输出的过程定义为方法)import java.io.*;public class P8_3public static void output(int n)int even,odd;int a=0,b=0;for(int i=0;in.length;i+)if(ni%2=0)a+;elseb+;even=new inta;odd=new intb;int j=0,k=0;for(int i=0;in.length;i+)if(ni%2=0)evenj=ni;j+;elseoddk=ni;k+;if(ba)for(int i=0;ib;i+)System.out.print(odd

26、i+ +eveni+ );for(int i=b;ia;i+)System.out.print(eveni+ );elsefor(int i=0;ia;i+)System.out.print(oddi+ +eveni+ );for(int i=a;ib;i+)System.out.print(oddi+ );System.out.println ();public static void main(Stringargs)throws IOExceptionBufferedReader br=new BufferedReader(new InputStreamReader(System.in);

27、int n=new int10;int i=0;while(i=9)System.out.print(请输入第+i+个整数:);String s=br.readLine();ni=Integer.parseInt(s);i+;P8_3.output(n);4、 学习理解冒泡排序、选择排序和二分查找。修改老师课件“第六讲”文件夹中的BinarySearch.java,要求其中的方法static void bubbleSort(int data)把数组按降序排列,并相应修改二分查找的方法static int binarySearch(int data,int key)。5、 实现如下的排序算法:有一种简单的排序方法叫计数排序法,这种排序算法对一个待排序的数组进行排序,并将排序结果放到另一个新的数组中。计数排序算法针对待排序数组中的每个数据,扫描待排序的数组一趟,统计待排序数组中有多少个数据的值比该数据的值小。假设针对某一个记录,统计出的计数值为c,那么,这个记录在新的有序数组中的合适的存放位置即为c。(提交作业)程序

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 习题库

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁