《Java语言程序设计基础篇》第10版 梁勇 著第七章练习题答案文档格式.docx
- 文档编号:8287011
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:56
- 大小:29.92KB
《Java语言程序设计基础篇》第10版 梁勇 著第七章练习题答案文档格式.docx
《《Java语言程序设计基础篇》第10版 梁勇 著第七章练习题答案文档格式.docx》由会员分享,可在线阅读,更多相关《《Java语言程序设计基础篇》第10版 梁勇 著第七章练习题答案文档格式.docx(56页珍藏版)》请在冰点文库上搜索。
best=scores[i];
}
//Declareandinitializeoutputstring
chargrade;
//Thegrade
//Assignanddisplaygrades
=best-10)
grade='
A'
;
elseif(scores[i]>
=best-20)
B'
=best-30)
C'
=best-40)
D'
else
F'
System.out.println("
Student"
+i+"
scoreis"
+
scores[i]+"
andgradeis"
+grade);
}
7.1附加
publicclassExercise07_01Extra{
publicstaticvoidmain(Stringargs[]){
boolean[]isCovered=newboolean[99];
//Defaultfalse
//Readallnumbersandmarkcorrespondingelementcovered
intnumber=input.nextInt();
while(number!
=0){
if(number>
=0&
&
number<
=99)
isCovered[number-1]=true;
number=input.nextInt();
//Checkifallcovered
booleanallCovered=true;
//Assumeallcovered
99;
i++)
if(!
isCovered[i]){
System.out.print((i+1)+"
allCovered=false;
//Findonenumberifnotcovered
}
//Displayresult
if(allCovered)
Theticketscoverallnumbers."
arethemissingnumbers."
7.2
publicclassExercise07_02{
publicstaticvoidmain(String[]args){
java.util.Scannerinput=newjava.util.Scanner(System.in);
int[]num=newint[10];
10;
//Readanumber
System.out.print(
Readanumber:
num[i]=input.nextInt();
//Displaythearray
for(inti=9;
i>
=0;
i--){
System.out.println(num[i]);
7.2附加
publicclassExercise07_02Extra{
Enterthecoordinatesofsixpoints:
doublex[]=newdouble[6];
doubley[]=newdouble[6];
x.length;
x[i]=input.nextDouble();
y[i]=input.nextDouble();
doubletotal=0;
for(inti=1;
x.length-1;
total+=getArea(x[0],y[0],x[i],y[i],x[i+1],y[i+1]);
Thetotalareais"
+total);
publicstaticdoublegetArea(doublex1,doubley1,doublex2,doubley2,doublex3,doubley3){
doubles1=Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
doubles2=Math.sqrt((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3));
doubles3=Math.sqrt((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2));
doubles=(s1+s2+s3)/2;
returnMath.sqrt(s*(s-s1)*(s-s2)*(s-s3));
7.3
publicclassExercise07_03{
int[]counts=newint[100];
Entertheintegersbetween1and100:
//Readallnumbers
//numberreadfromafile
if(number<
=100&
number>
=0)
counts[number-1]++;
100;
if(counts[i]>
0)
System.out.println((i+1)+"
occurs"
+counts[i]
+((counts[i]==1)?
time"
:
times"
));
7.3附加
publicclassExercise07_03Extra{
intcount=0;
//Howmanysolutionsarefound?
//Queenpositions
int[]queens=newint[8];
//queensareplacedat(i,queens[i])
8;
i++)
queens[i]=-1;
//-1indicatesthatnoqueeniscurrentlyplacedinthe
//ithrow
queens[0]=0;
//Initially,placeaqueenat(0,0)inthe0throw
//k-1indicatesthenumberofqueensplacedsofar
//Wearelookingforapositioninthekthrowtoplaceaqueen
intk=1;
while(k>
//Findapositiontoplaceaqueeninthekthrow
intj=findPosition(k,queens);
if(j<
0){
queens[k]=-1;
k--;
//backtracktothepreviousrow
}else{
queens[k]=j;
if(k==7){
count++;
//Onemoresolutionfound
Solution"
+count+"
:
"
printResult(queens);
k++;
Howmanysolutions?
+count);
publicstaticintfindPosition(intk,int[]queens){
intstart=queens[k]==-1?
0:
queens[k]+1;
for(intj=start;
j<
j++){
if(isValid(k,j,queens))
returnj;
//(k,j)istheplacetoputthequeennow
return-1;
/**Returntrueifyouaqueencanbeplacedat(k,j)*/
publicstaticbooleanisValid(intk,intj,intqueens[]){
//Seeif(k,j)isapossibleposition
//Checkjthcolumn
k;
if(queens[i]==j)
returnfalse;
//Checkmajordiagonal
for(introw=k-1,column=j-1;
row>
column>
row--,column--)
if(queens[row]==column)
//Checkminordiagonal
for(introw=k-1,column=j+1;
column<
=7;
row--,column++)
returntrue;
/**Printatwo-dimensionalboardtodisplaythequeens*/
publicstaticvoidprintResult(int[]queens){
//Displaytheoutput
for(intj=0;
queens[i];
j++)
|"
|Q|"
for(intj=queens[i]+1;
|"
System.out.println();
7.4
publicclassExercise07_04{
//Mainmethod
double[]scores=newdouble[100];
doublesum=0;
doubleitem;
do{
Enteranewscore:
item=input.nextDouble();
if(item>
scores[count]=item;
sum+=item;
}while(item>
=0);
countis"
doubleaverage=(sum)/count;
intnumOfAbove=0;
intnumOfBelow=0;
count;
=average){
numOfAbove++;
numOfBelow++;
Averageis"
+average);
Numberofscoresaboveorequaltotheaverage"
+numOfAbove);
Numberofscoresbelowtheaverage"
+numOfBelow);
7.4附加
publicclassExercise07_04Extra{
//Prompttheusertoenterastring
Enterastring:
Strings=input.nextLine();
int[]counts=count(s);
Digit"
+counts[i]+
publicstaticint[]count(Strings){
int[]counts=newint[10];
s.length();
if(Character.isDigit(s.charAt(i))){
counts[s.charAt(i)-'
0'
]++;
returncounts;
7.5
/*
方法:
useanarraynumberstostorethedistinctvalues.
readeachvaluefrominput,checkifitisalreadyinthearraynumbers,
ifnot,additintoit.
//Suggestedtemplate:
publicclassExercise07_05{
//numbersarraywillstoredistinctvalues,maximumis10
int[]numbers=newint[10];
//Howmanydistinctnumbersareinthearray
intnumberOfDistinctValues=0;
Entertennumbers:
numbers.length;
//Readaninput
intvalue=input.nextInt();
步骤1:
Checkifvalueisinnumbers
步骤2:
Ifvalueisnotinnumbers,additintonumbers
步骤3:
IncrementnumberOfDistinctValues
步骤4:
Displayoutput
解法1:
int[]numbers=newint[30];
//Howmanydistinctnumbersareinthe
//array
+numbers.length+"
numbers:
//Step1:
booleanisInTheArray=false;
numberOfDistinctValues;
if(value==numbers[j]){
isInTheArray=true;
}
//Step2:
isInTheArray){
numbers[numberOfDistinctValues]=value;
//Step3:
numberOfDistinctValues++;
Thenumberofdistinctvaluesis"
+numberOfDistinctValues);
System.out.print(numbers[i]+"
解法2:
fo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java语言程序设计基础篇 Java语言程序设计基础篇第10版 梁勇 著第七章练习题答案 Java 语言程序设计 基础 10 第七 练习题 答案