java开发实战经典第四章课后习题答案完整版doc.docx
《java开发实战经典第四章课后习题答案完整版doc.docx》由会员分享,可在线阅读,更多相关《java开发实战经典第四章课后习题答案完整版doc.docx(9页珍藏版)》请在冰豆网上搜索。
java开发实战经典第四章课后习题答案完整版doc
第一题
publicclassFourOl{
publicstaticdoublesum(inta){
doublesum=1;
for(inti=l;i<=a;i++){
sum=sum*i;
}
returnsum;
}
publicstaticvoidmain(String[]args){
inta=4;
doublesum=0;
doublek[]=newdouble[a];
for(inti=l;i<=4;i++){
k[i-1]=sU27?
(i);
}
for(intj=0;jsum=sum+k[j];
}
System.out.printIn(”总数为:
fl+sum);
}
}
第二题
publicstaticvoidmain(String[]args){
inta[]={1,2,3,4,5.6,7,8,9,10,11};
int0=0,e=0;
for(inti=0;•丄ength;i++){
if(a[i]%2==0){
e++;
}else{
o++;
}
}
System,out.printIn("奇数个数为:
”+o+”\t”+”偶数个数为:
”+e);
}
}
第三题
publicclassFour03{
publicstaticvoidmain(String[]args){
intoldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,51;
intnewArr[]=newint[16];
for(inti=0zj=0;i=0){
newArr[j]=oldArr[i];
j++;
for(inti=0;i//必须要写这个if语句,因为newArr多余的空间默认值为0if(newArr[i]!
=0)
System.out.print(newArr[i]+nn);
第四题
publicclassFour04{
publicstaticvoidmain(String[]args){
intArray[]={1,2,3,4,5,6,7,8,9,10,11};
intm=max(Array);
System.out.printIn(”最大值为:
11+m);
inta=min(Array);
System.out.printin(”最小值为:
n+a);
ints=sum(Array);
System,out.printin(”,总数为:
*'+s);
}
publicstaticintmax(inttemp[]){
intz=temp[0];
for(inti=0;empif(zz=temp[i];
}
}
returnz;
}
publicstaticintmin(inttemp[]){
intz=temp[0];
for(inti=0;iif(z>temp[i]){z=temp[i];
}
}
returnz;
}
publicstaticintsum(inttemp[]){
intsum=0;
for(inti=0;isum=sum+temp[i];
}
returnsum;
}
}
第五题
publicclassFour05{
publicstaticvoidmain(String[]args){
intArray[]={1,2,3,4,5,6,7,8,9,10,11};
inta=5;
intb=100;
search(a,Array);
search(b,Array);
}
publicstaticvoidsearch(intc,inttemp[]){booleanflag=false;
for(inti=0;emp>length;i++){
if(c==temp[i]){
flag=true;
)
if(flag){
System.out・println(“YES,止匕数组屮存在元索”+c);
)else{
System,out.printin(nN0,此数组中不存在元素”+c);
}
}
)
第六题
publicclassFour06{
publicstaticvoidmain(String[]args){inttemp[]=newint[10];
init(temp);
print(temp);
reserve(temp);
System.out.printIn();
print(temp);
)
publicstaticvoidinit(intx[]){
for(inti=0;iX[i]=i;
}
}
publicstaticvoidprint(intx[]){
for(inti=0;iSystem.out.printIn(x[i]+n>n);
}
}
publicstaticvoidreserve(intx[]){
intfoot=0;
inthead=0;
if(x.length%2==0){
foot=x.length/2;
head=
for(inti=0;ix[foot]=x[head];
x[head]=temp;
foot++;
head——;
}
}else{
foot=x.length/2;
head=foot;
for(inti=0;ix[foot]=x[head];
x[head]=temp;
head--;
foot++;
第七题
publicclassFour07{
publicstaticvoidmain(Stringargs[]){
floatscore[]={90f,87f,78f,67f,93f,79f,82f,84f,71f,86f};
floatmax=score[0];
for(inti=0;iif(maxmax=score[i];
}
}
System.out.printin(”最分为:
n+max);
}
}
第八题
publicclassFour08{
publicstaticvoidmain(String[]args){
intArray[]={lz2,lz3,4z6,5z4,3,2,0z9z8z
7,6,5,4,3,5,6,7,8,9,0,9,8,2,1,3,4,};
intnl=0,n2=0zn3=0zn4=0zn5=0zn6=0zn7=0zn8=0zn9=0zn0=0;
for(inti=0;iswitch(Array[i]){
case1:
{
nl++;
break;
}
case2:
{
n2++;
break;
}
case3:
{
n3++;
break;
}
case4:
{
n4++;
break;
}
case5:
{
n5++;
break;
}
case6:
{
n6++;
break;
}
case7:
{
n7++;
break;
}
case8:
{
n8++;
break;
case9:
{n9++;
break;
}
case0:
{nO++;
break;
}
System.out.printin("0>9的个数分别为:
n+n0+">,'+nl+,\"+
n2+”、”+n3+“、”+n4+”、”+n5+”、“+n6+”、n+n7+”、”+n8+”、n+n9);
}
}
第九题
publicclassFour09{
publiestaticvoidmain(String[]args){
inta[]={1,2,3,4,5,6,7,8,9,0};
intmaxFoot=0;
intmax=a[0];
for(inti=0;iif(maxmax=a[i];
maxFoot=i;
}
}
intval=a[0];
a[0]=a[maxFoot];
a[maxFoot]=val;
Sysout-printIn(a[0]);
}
)
第十题
publicclassFourlO{
publicstaticvoidmain(String[]args){inttemp[]={1,2,3,4,5,6,7,8,9,10};java.util.Arrays•sort(temp);print(temp);
temp=inc(temp,13z12z34f5z6f7);
java.util.Arrays•sort(temp);
print(temp);
}
publicstaticvoidprint(inta[]){
for(inti=0;iSystem.out.print(a[i]+n>n);
}
System.out.printin();
)
publicstaticint[]inc(inta[]fint...val){
intvalue[]=newint[a.length+val••丄ength];
System.arraycopy(afOzvalue,Oza•length);
System.arraycopy(va1,0zvalue,a•length,val•length);returnvalue;
}
}