您好,欢迎访问三七文档
项目一学生管理系统(结构化设计方法实现)任务一程序的运行环境(三)简答题1.Java语言有哪些特点?答:简单,面向对象,与平台无关,解释型,多线程,安全,动态。2.JDK安装完成后,如何设置环境变量?答:主要设置环境变量JAVA_HOME,path,classpath。详见教材第6页。3.简述Java应用程序和小应用程序的区别。答:Java应用程序是由用户系统就地装入的可独立运行的Java程序,可以是基于窗口或控制台的。而Java小应用程序需要嵌入到网页在浏览器中运行。4.简述Java应用程序的开发过程。答:(1)建立源程序。可利用任何文本编辑器建立,文件扩展名为.java。(2)编译源程序。命令为javac程序名.java(3)解释运行程序。命令为java程序名任务三成绩的判断和统计(三)编程题1.输入4个数,将这4个数按从小到大输出。packagepr1;importjava.util.Scanner;publicclasslx1_3_1{publicstaticvoidmain(Stringargs[]){Scannerscan=newScanner(System.in);inta,b,c,d,t;System.out.println(请输入三个整数:);a=scan.nextInt();b=scan.nextInt();c=scan.nextInt();d=scan.nextInt();if(ab){t=a;a=b;b=t;}if(ac){t=a;a=c;c=t;}if(ad){t=a;a=d;d=t;}if(bc){t=b;b=c;c=t;}if(bd){t=b;b=d;d=t;}if(cd){t=c;c=d;d=t;}System.out.println(a+,+b+','+c+','+d);}}2.输入一个年份值,判断是否是闰年,输出相应的信息。importjava.util.Scanner;publicclassExam24{publicstaticvoidmain(String[]args){Scannerinput=newScanner(System.in);intyear;year=input.nextInt();if(year%4==0&&year%100!=0||year%400==0){System.out.println(year+年是闰年);}else{System.out.println(year+年不是闰年);}}}3.输入一元二次方程系数,若有实数根,求根并输出,否则输出“不是二次方程或没有实数根”的信息。packagepr1;importjava.util.Scanner;publicclasslx1_3_3{publicstaticvoidmain(Stringargs[]){doublea,b,c,d,x1,x2;Scannerscan=newScanner(System.in);System.out.println(请输入一元二次方程的系数:);a=scan.nextDouble();b=scan.nextDouble();c=scan.nextDouble();d=b*b-4*a*c;if(d=0){x1=(-b+Math.sqrt(d))/(2*a);x2=(-b-Math.sqrt(d))/(2*a);System.out.println(方程的实数根为:x1=+x1+x2=+x2);}else{System.out.println(方程没有实数根!);}}}4.编写程序,计算邮局汇款的汇费:如果汇款金额小于100元,汇费为1元,如果金额在100元与500元之间,按1%收取汇费,如果金额大于500元,汇费为50元。packagepr1;importjava.util.Scanner;publicclasslx1_3_4{publicstaticvoidmain(String[]args){Scannerinput=newScanner(System.in);doubleje,hf;je=input.nextDouble();if(je100){hf=1;}elseif(je500){hf=je*0.01;}else{hf=50;}System.out.println(汇款金额:+je+汇费:+hf);}}5.求某年某月的天数.packagepr1;importjava.util.Scanner;publicclasslx1_3_5{publicstaticvoidmain(Stringargs[]){Scannerinput=newScanner(System.in);intyear,month,day;year=input.nextInt();month=input.nextInt();switch(month){case2:if(year%4==0&&year%100!=0||year%400==0)day=29;elseday=28;break;case1:case3:case5:case7:case8:case10:case12:day=31;break;default:day=30;break;}System.out.println(year+年+month+月的天数:+day);}}6.求从1到100之间所有奇数的平方和(用for、while和do……while编写程序)。publicclasslx1_3_6{publicstaticvoidmain(String[]args){inti,sum;sum=0;for(i=1;i=100;i++){if(i%2==1)sum=sum+i*i;}System.out.println(sum=+sum);}}7.求S=1+2+3+…+n之和,S<1000的最大n的值。publicclasslx1_3_7{publicstaticvoidmain(String[]args){ints=0;inti;for(i=1;;i++){s=s+i;if(s1000)break;}System.out.println(i-1);}}8.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。publicclasslx1_3_8{publicstaticvoidmain(String[]args){doublea,b,s;inti;s=0;a=2;b=1;for(i=1;i=20;i++){s=s+a/b;a=a+b;b=a-b;}System.out.println(s);}}9.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个,到第十天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?packagepr1;publicclasslx1_3_9{publicstaticvoidmain(String[]args){intx,i;x=1;for(i=9;i=1;i--){x=2*(x+1);}System.out.println(x);}}10.输出九九乘法表。packagepr1;publicclasslx1_3_10{publicstaticvoidmain(String[]args){inti,j;for(i=1;i=9;i++)//行{for(j=1;j=i;j++)//列{System.out.print(i+*+j+=+i*j+);}System.out.println();//换行}}}11.输出1000之内的所有完数。所谓完数指的是:如果一个数恰好等于它的所有因子之和,这个数就称为完数。packagepr1;publicclasslx1_3_11{publicstaticvoidmain(Stringargs[]){intx,y,i;for(x=1;x=1000;x++){y=0;for(i=1;i=x/2;i++){if(x%i==0)y=y+i;}if(x==y){System.out.println(x);}}}}12.输出100以内的全部素数。packagepr1;publicclasslx1_3_12{publicstaticvoidmain(Stringargs[]){intx,i,k;for(x=2;x=100;x++){k=(int)Math.sqrt(x);for(i=2;i=k;i++){if(x%i==0)break;}if(ik){System.out.println(x);}}}}13.求1!+2!+3!+……+10!packagepr1;publicclasslx1_3_13{publicstaticvoidmain(Stringargs[]){doublesum=0,t;for(inti=1;i=10;i++){t=1;for(intj=1;j=i;j++){t=t*j;}sum=sum+t;}System.out.println(1!+2!+3!+……+10!=+sum);}}14.求2+22+222+2222+22222。packagepr1;publicclasslx1_3_14{publicstaticvoidmain(Stringargs[]){intsum,x,v,n=5;v=0;x=2;sum=0;for(inti=1;i=n;i++){v=v*10+x;sum+=v;}System.out.println(2+22+222+2222+22222=+sum);}}任务四学生成绩管理系统功能的实现(三)编程题1.编写一个程序,计算一维数组中的最大值、最小值及其差值。packagepr1;publicclasslx1_4_1{publicstaticvoidmain(String[]args){inta[]={34,65,79,50,30,40,65,23,8,10};//数组名.lengtha.lengthinti,max,min;intn=a.length;//a[0]a[1]a[n-1]max=a[0];min=a[0];for(i=1;in;i++){if(maxa[i]){max=a[i];}elseif(mina[i]){min=a[i];}}System.out.println(最大数:+max+最小数:+min+差值:+(max-min));}}2.将一个数组中的数逆序重新存放。packagepr1;publicclasslx1_4_2{publicstaticvoidmain(Stringargs[]){inta[]={3,15,28,11,34,78,95,27,18};inti,length,temp;length=a.length;for(i=0;i(length/2);i++){//以下将数组元素a[i]和a[length-1-i]的值互换temp=a[i];a[i]=a[length-1-i];a[length-1-i]=temp;}for(i=0;ilength;i++){System.out.print(a[i]+);}}}3.已知数组(12,23,26,45,58,60)是有序的,输入一个数x,将它插入到数组中,保证数组仍然是有序的。packagepr1;importjava.util.Scanner;publicclasslx1_4_3{publicstaticvoidmain(Stringargs[]){inta[]={12,23,26,45,58,60,0};intx,i,j,n;Scannerscanner=newScanner(System.in);System.out.println(请输入要插入的数x:);x=scanner.nextInt();n=6;for(i=0;in;i++){if(xa[
本文标题:Java习题答案
链接地址:https://www.777doc.com/doc-4708451 .html