数组参考答案Word文档下载推荐.docx
《数组参考答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数组参考答案Word文档下载推荐.docx(15页珍藏版)》请在冰豆网上搜索。
![数组参考答案Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-10/1/55177ee7-8212-436f-aaf2-41183484e7fd/55177ee7-8212-436f-aaf2-41183484e7fd1.gif)
}
2.输出一个double型二维数组(长度分别为5、4,值自己设定)的值。
/*例5-3
*多维数组范例
publicclassArrayTwoDimension
double[][]buffer=newdouble[5][4];
buffer.length;
for(intj=0;
j<
buffer[0].length;
j++)
System.out.print(buffer[i][j]);
System.out.println();
3.将一个字符数组的值(neusofteducation)考贝到另一个字符数组中。
publicclassArrayCopyDemo{
publicstaticvoidmain(String[]args){
//定义源字符数组
char[]copyFrom={'
n'
'
e'
u'
s'
o'
f'
t'
d'
c'
a'
i'
};
char[]copyTo=newchar[7];
System.arraycopy(copyFrom,2,copyTo,0,7);
System.out.println(newString(copyTo));
4.给定一个有9个整数(1,6,2,3,9,4,5,7,8})的数组,先排序,然后输出排序后的数组的值。
publicclassArraySortDemo{
/**
*@paramargs
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
int[]point={1,6,2,3,9,4,5,7,8};
java.util.Arrays.sort(point);
for(inti=0;
point.length;
{
System.out.println(point[i]);
}
5.在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。
publicclassArraymax{
int[]a={18,25,7,36,13,2,89,63};
intmax=a[0];
intmaxIndex=0;
for(inti=1;
a.length;
if(max<
=a[i]){
max=a[i];
maxIndex=i;
}
System.out.println("
最大值为:
"
+max+"
最大值下标为:
+maxIndex);
6、有一个已经排好序的数组。
现输入一个数,要求按原来的规律将它插入数组中。
importjava.util.Scanner;
publicclassArrayinsert{
//定义
inta[]={1,2,4,8,16,32,64,128,256,512,0};
Scanners=newScanner(System.in);
a[11]=s.nextInt();
java.util.Arrays.sort(a);
System.out.println(a[i]);
7.输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
packagecom.neusoft.javaTest;
importjava.util.*;
publicclassAnswer{
publicstaticvoidmain(String[]args){
inti,min,max,n,temp1,temp2;
inta[];
输入数组的长度:
);
Scannerkeyboard=newScanner(System.in);
n=keyboard.nextInt();
a=newint[n];
for(i=0;
i<
n;
i++){
System.out.print("
输入第"
+(i+1)+"
个数据"
a[i]=keyboard.nextInt();
}
//以上是输入整个数组
max=0;
min=0;
//设置两个标志,开始都指向第一个数
for(i=1;
if(a[i]>
a[max])
max=i;
//遍历数组,如果大于a[max],就把他的数组下标赋给max
if(a[i]<
a[min])
min=i;
//同上,如果小于a[min],就把他的数组下标赋给min
}
//以上for循环找到最大值和最小值,max是最大值的下标,min是最小值的下标
temp1=a[0];
temp2=a[min];
//这两个temp只是为了在交换时使用
a[0]=a[max];
a[max]=temp1;
//首先交换a[0]和最大值a[max]
if(min!
=0){//如果最小值不是a[0],执行下面
a[min]=a[n-1];
a[n-1]=temp2;
//交换a[min]和a[n-1]
}else{//如果最小值是a[0],执行下面
a[max]=a[n-1];
a[n-1]=temp1;
i++){//输出数组
System.out.print(a[i]+"
"
8.将一个数组中的元素逆序存放
publicclassAnswer{
publicstaticvoidmain(String[]args){
Scanners=newScanner(System.in);
inta[]=newint[20];
System.out.println("
请输入多个正整数(输入-1表示结束):
inti=0,j;
do{
a[i]=s.nextInt();
i++;
}while(a[i-1]!
=-1);
你输入的数组为:
for(j=0;
j<
i-1;
j++){
System.out.print(a[j]+"
\n数组逆序输出为:
for(j=i-2;
j>
=0;
j=j-1){
9.将一个数组中的重复元素保留一个其他的清零。
int[]a={1,2,2,3,4,5,6,4,7,2,10};
for(inti=0;
i<
a.length-1;
i++){
for(intj=i+1;
j<
a.length;
j++){
if(a[i]==a[j]){
a[j]=0;
10、写一个方法,功能:
定义一个一维的int数组,长度为3,把任意三个整数a,b,c赋值给数组,然后将它们按从小到大的顺序输出(使用冒泡排序)
publicstaticvoidsort(int[]data){
//数组长度
intlen=data.length;
inttemp=data[0];
//临时变量
for(inti=0;
len-1;
i++){
for(intj=len-1;
j>
i;
j--){
//如果data[j]小于data[j-1],交换
if(data[j]<
data[j-1]){
temp=data[j];
data[j]=data[j-1];
data[j-1]=temp;
}
//数组打印
publicstaticvoidprint(int[]data){
data.length;
i++){
System.out.print(data[i]+"
System.out.print("
\n"
11、给定一维数组{-10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。
inta[]=newint[]{-10,23,246,-100,0,5};
intmax=a[0];
intmin=a[0];
intadd=a[0];
for(inti=1;
if(a[i]<
min){
min=a[i];
}elseif(a[i]>
max){
max=a[i];
add=add+a[i];
System.out.pr